Road vehicle sensing apparatus and signal processing apparatus therefor

ABSTRACT

A road vehicle sensor provides an output signal having a magnitude which varies with time through a plurality of values as a vehicle passes the sensor. Signal processing apparatus monitors the timing of sensor signals generated from sensors in adjacent lanes of a highway and provides an indication when such sensor signals could correspond to a double count with a single vehicle being detected by both sensors. Then, the geometric mean of the amplitudes of the sensor signals from the sensors in adjacent lanes is calculated and is used to indicate a double count if the geometric mean is below a threshold value. Signal processing arrangements are also described to detect tailgating vehicles which may be simultaneously detected by a sensor, and for determining the length of slow moving or stationary traffic.

BACKGROUND OF THE INVENTION

The present invention relates to road vehicle sensing apparatus.

In the prior art a known road vehicle sensing apparatus comprises atleast one sensor for location in at least one lane of a highway todetect vehicles travelling in said lane. A signal generation circuit isconnected to the sensor and is arranged to produce a sensor signalhaving a magnitude which varies with time through a plurality of valuesas a vehicle passes the sensor in said lane. When there is no vehiclenear the sensor, the signal magnitude is at a base value. Apparatus ofthis type will be referred to herein as road vehicle sensing apparatusof the type defined.

The sensors used in road vehicle sensing apparatus of the type definedare typically inductive loops located under the road surface, which areenergized to provide an inductive response to metal components of avehicle above or near the loop. The response is usually greatest,providing a maximum sensor signal magnitude, when the maximum amount ofmetal is directly over the loop. Other types of sensor may also beemployed which effectively sense the proximity of a vehicle and canprovide a graduated sensor signal increasing to a maximum as the vehicleapproaches and then declining again as the vehicle goes past the sensor.For example magnetometers may be used for this purpose.

In a multi lane highway, with two or more traffic lanes for a singledirection of travel, it is normal to provide separate sensors for eachlane so that two vehicles travelling in lanes side by side can beseparately counted. The signal generation circuit is arranged to providea separate said signal for each sensor. The sensors in adjacent lanesare usually aligned across the width of the highway. Apparatus of thistype with adjacent sensors in the lanes of a multi lane highway will bereferred to herein as road vehicle sensing apparatus of the type definedfor a multi lane highway.

It is also normal practice for the sensor installation on a single laneof highway to include two sensors installed a distance apart along thelane of the highway. Again the signal generation circuit produces aseparate said signal for each sensor. This is arrangement allows thedirection of travel of a vehicle in the lane to be determined and alsothe timing of the signals from the two sensors can be used to provide ameasure of vehicle speed. The first sensor in the normal direction oftravel in the lane can be called the entry sensor and the second sensorcan be called the leaving sensor. Apparatus of this type will bereferred to herein as vehicle sensing apparatus of the type defined withtwo successive sensors in a single lane.

In the prior art, vehicle sensing apparatus of the type defined has beenused primarily for the purpose of counting the vehicles to provide anindication of traffic density. Although the signal generation circuit ofthe apparatus of the type defined provides a sensor signal of varying orgraduated magnitude, a typical prior art installation has a detectionthreshold set at a magnitude level above the base value to provide anindication of whether or not a vehicle is being detected by the sensor.Thus, in prior art installations, the only information available fromthe sensing apparatus is a binary signal indicating whether or not thesensor is currently detecting the vehicle, that is whether the sensor is“detect”.

Prior art sensing apparatus using one or more inductive loops under theroad surface have signal generation circuitry arranged to energize theloops at a frequency typically in the range 60 to 90 kHz. In someexamples, a phase locked loop circuit is arranged to keep the energizingfrequency constant as the resonance of the loop and associatedcapacitance provided by the circuit is perturbed by the presence of themetal components of a road vehicle passing over the loop. The sensorsignal produced by such signal generation circuit is typically thecorrection signal generated by the phase locked loop circuit required tomaintain the oscillator frequency at the desired value. In a typicalcircuit, the correction signal may be a digital number contained in acorrection counter. As a vehicle passes the loop sensor, the digitalnumber from the counter may progressively rise from zero count up to amaximum count (which in some examples may be between 200 and 1,000) andthen falls again to zero as the vehicle moves away from the sensor loop.As mentioned above, prior art installations are arranged to set athreshold value for the sensor output signal, above which the sensor isdeemed to be “in detect”.

SUMMARY OF THE INVENTION

The present invention in its various aspects is based on the realizationthat there is far more information available in the output signals ofvehicle sensing apparatus of the type defined which can be employed soas to improve the reliability of the prior art installations.

Prior art installations are reasonably reliable and accurate in countingvehicles, so long as the traffic is free flowing along the highway witha reasonable spacing between vehicles, and so long as the vehicles donot cross from one lane to another in the vicinity of the sensorinstallation. In practice, however, a typical installation has a vehiclecount accuracy of only about plus or minus one percent even in freeflowing traffic conditions. In congested traffic conditions, countaccuracy falls dramatically and is seldom specified.

There is an increasing need for more accurate automatic trafficmonitoring. This need has been stimulated by proposals for highways tobe maintained, or even constructed, with private finance, andcompensation to be paid to the constructors/maintainers by CentralGovernment or a Regional Authority in accordance with the number ofvehicles using the highway. Even a 1% error in count accuracy would betoo high. Importantly, also, the vehicle sensing apparatus should becapable of determining the class of the vehicles using the highway,usually on the basis of vehicle length. Also, the sensor should be ableto provide accurate information even in congested conditions.

Various aspects and preferred embodiments of the present invention aredefined in the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

Aspects and examples of the invention will now be described withreference to the accompanying drawings in which:

FIG. 1 is a plan view of a typical vehicle sensor installation for onecarriageway of a two lane highway;

FIG. 2 is a block schematic diagram of a vehicle sensing apparatus whichcan embody the present invention;

FIG. 3 is a graphical illustration of the sensor signals produced byboth entry and leaving sensors in one lane of the installationillustrated in FIG. 1;

FIG. 4 is a graphical illustration showing how the sensor signalmagnitude can be normalized relative to the maximum amplitude of asignal;

FIG. 5 is a graphical illustration of a leading edge of a sensor signalillustrating a method of determining the point of inflexion;

FIG. 6 is a graphical illustration of the sensor signal produced by arelatively long vehicle passing the sensor;

FIG. 7 is a graphical illustration of a method for determining thelength of a vehicle from the overlap between the sensor signals from twosuccessive sensors in a single lane;

FIGS. 8 and 9 illustrate respectively the sensor signals for vehicleswhich are either too long, or too short for the length to be determinedby the method illustrated in FIG. 7;

FIG. 10 is a graphical illustration showing how the length of arelatively long vehicle can be determined by repeatedly comparing pointson the signal profiles from the two sensors in a single lane of thehighway;

FIG. 11 is a graphical illustration showing a more accurate method ofusing the overlap between successive sensor signals to determine vehiclelength.

FIG. 12 is a schematic diagram illustrating a software structureimplementing an embodiment of the present invention;

FIGS. 13A and 13B together constitute the transition diagram of theEvent State Machine of the structure illustrated in FIG. 12; and

FIG. 14 is the transition diagram of the Tailgate State Machine of thestructure illustrated in FIG. 12.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 illustrates a typical sensor loop illustration on a two lanecarriageway of a highway. The normal direction of traffic on thecarriageway is from left to right as shown by the arrow 10. Entry loop11 and leaving loop 12 are located one after the other in the directionof travel under the surface on lane 1 of the highway and entry loop 13and leaving loop 14 are located under lane 2. In the illustratedinstallation, the entry loops 11 and 13 of the two lanes of the highwayare aligned across the width of the highway and the leaving loops 12 and14 are also aligned. In the illustrated example, each of the loops has alength in the direction of travel of 2 meters and the adjacent edges ofthe entry and leaving loops are spaced apart also by 2 meters, so thatthe centers of the entry and leaving loops are spaced apart by 4 meters.Again in the illustrated example, all the loops have a width of 2 metersand the adjacent entry loops 11 and 13 have neighbouring edges about 2meters apart, with a similar spacing for the adjacent edges of theleaving loops 12 and 14.

This is an example of a typical installation in which an entry and aleaving loop is provided in each lane of a carriageway. It is also knownto provide additional combinations of entry and leaving loop so that,for example, for a two lane highway there may be three entry and leavingloop combinations with an additional loop combination located along thecenter line of the highway between the two lanes. Similarly, for threelane highways, it is known to provide five entry and leaving loopcombinations spread across the carriageway. Many aspects of the presentinvention are equally applicable to these alternative arrangements.

Referring now to FIG. 2, a typical electronic installation for vehiclesensing apparatus of the type defined is shown. The various sensorloops, as illustrated in FIG. 1, are represented generally by the block20. Each of the entry and leaving loops are connected to detectorelectronics 21 which provides the signal generation circuit for thevarious loops. The detector electronics may be arranged to energize eachof the loops at a particularly detector station (e.g. as illustrated inFIG. 1) simultaneously so that four sensor signals are then produced bythe detector electronics 21 continuously representing the status of eachof the loops. However, more commonly, the detector electronics 21 isarranged to energize or scan each of the loops of the detector stationsuccessively, so that a sensor signal for each loop is updated on eachscan at a rate determined by the scanning rate. In some examples, eachsensor signal is thereby updated approximately every 6 mS.

The raw data representing the sensor signal magnitudes are supplied fromthe detector electronics 21 over a serial or parallel data link toprocessing unit 22 in which the data is processed to derive the requiredtraffic information. Aspects of the present invention are particularlyconcerned with the signal processing which may be performed by theprocessing unit 22.

Processing unit 22 may be constituted by a digital data processing unithaving suitable software control. It will be appreciated that manyaspects of the present invention may be embodied by providing theappropriate control software for the processing unit

In FIG. 2, the illustrated installation also includes remote reportingequipment 23 arranged to receive the traffic information derived by theprocessing unit 22 over a serial link.

Referring now to FIG. 3, the variation in sensor signal magnitude forboth entry and leaving sensor loops is illustrated graphically for arelatively short vehicle. Time is shown along the x axis and theillustrated sensor signals, or profiles, are provided assuming a vehiclehas past over the entry and leaving loops at a substantially uniformspeed. The y axis is calibrated in arbitrary units representing, in thisexample, the correction count contained in the phase locked loop controlcircuitry driving the respective loops. The signal profile (orsignature) from the entry loop is shown at 30 and the signal profile orsignature from the leaving loop is shown at 31.

FIG. 4 illustrates how the profiles from a particular loop asillustrated in FIG. 3 can be normalized with respect to a maximumamplitude value. In the illustrated example, the sensor profile orsignature has a single maximum. If this is set at a normalized value,100, then the normalized values at the other sample points illustratedin FIG. 4, can be calculated by dividing the actual magnitude value atthese points by the magnitude value at the point of maximum amplitudeand multiplying by one hundred. If the profile has two or more maxima orDeaks, then the largest is used for normalizing.

Providing normalized magnitude values in this way is useful inperforming various aspects of the present invention as will becomeapparent.

Referring now again to FIG. 1, a significant problem with sensorinstallations as illustrated is the possibility of double detection. Avehicle passing squarely over the detection loops in its own laneproduces a significant sensor signal magnitude only from the loops inits lane. Referring to FIG. 1, vehicle 15 will produce a significantsensor signal magnitude only in entry loop 11 and leaving loop 12 inlane 1, while vehicle 16 will produce significant sensor signalsmagnitudes only in entry loop 13 and leaving 14 in lane 2. However, avehicle passing the detector site in some road position between lanesmay produce substantial sensor signal magnitudes in the loops in bothlanes. For example, vehicle 17 will produce signal magnitudes in allfour loops. This leads to a difficulty in discriminating between thecase of two cars simultaneously passing over the two adjacent sets ofloops (e.g. class cars 15 and 16 in FIG. 1) and the case of a single carpassing at some position between the detector loops (e.g. vehicle 17 inFIG. 1). In prior art installations, the signal magnitude produced bythis latter case (vehicle 17) would often exceed the detectionthresholds of the loops in both lanes. It is important for manyapplications of vehicle detection that these two cases be correctlyrecognized. A single vehicle being detected in two lanes is termed a“double detection”.

In order to differentiate between these two cases, the processing unit22 in FIG. 2 is arranged to measure the peak amplitudes of the signalsfrom adjacent loops, that is the entry loops 11 and 13 or the leavingloops 12 and 14. The processing unit is then arranged to take thegeometric mean of these two amplitude values and compare that meanagainst one or more threshold values.

It has been found that the Geometric mean of the maximum amplitudes inadjacent sensors for a double detection event tends to be substantiallybelow the geometric mean where separate vehicles are being detected inadjacent lanes.

Generally, it may be satisfactory in some installations to use only asingle threshold set at a level to distinguish between double detectionand genuine two vehicle detection events. The threshold can be setempirically. A single threshold may be sufficient if the adjacent loopsin the two lanes are sufficiently spaced apart so that the sensor signalmagnitude from adjacent loops produced by a single vehicle between theloops is likely to be relatively low in at least one of the two adjacentloops.

However, in other installations two thresholds may be required, one setsufficiently low to identify clear double detection events withconfidence, and the other threshold set rather higher to provide anindication of a possible double detection event. The processing unit isthen arranged in response to a possible double detection event, wherethe geometric mean is only below the upper threshold and not the lowerthreshold, by performing other tests on the signals from the loops toconfirm the likelihood of double detection. The further tests mayinclude checking that the speed measured from the loop signals in thetwo lanes is substantially the same and also confirming that themeasured length in the two lanes is substantially the same. Anothercheck is to confirm that the signal profile from one of a pair ofadjacent loops in the two lanes is contained fully within the profilefrom the other loop.

As mentioned above, it is desirable for vehicle sensor apparatus of thetype defined to be used to provide a measure of the length of vehiclespassing along the highway. The length of the vehicle passing over asensor site can be determined by measuring properties of the signalprofile or signature obtained from one or both of the entry and leavingloops. The length may be determined either dynamically, requiring aknowledge of the vehicle speed, or statically. Static measurements havean advantage over dynamic measurements in that they can be made instop-start traffic conditions, while dynamic measurements requirevehicle speed to be reasonably constant while passing over the sensorsite. On the other hand dynamic measurements can in some cases be moreaccurate and reliable.

One dynamic method for determining speed relies on measuring the timebetween points on the leading and trailing edges of the sensor signalprofile as a vehicle passes a sensor loop. Thus, the processing unit maybe arranged to determine the time between predefined points on theleading and trailing edges. In one example, the predefined points may bepoints of inflexion on these edges. A point of inflexion is defined asthe point of maximum gradient.

One method of determining the timing of the points of inflexion on theleading and trailing edges is by determining the times at either side ofthe inflexion point where the signature slope is somewhat less than itsmaximum and then finding the mid point between these upper and lowerpoints. This method is used to avoid the effect of transient distortionsof the signal profile, which may for example be caused by suspensionmovement of the vehicle travelling over sensor. A transient distortioncould result in a single measurement of the point of maximum slope beingincorrect. Several measurements could be taken at different slopes oneither side of the inflexion point and then a central tendencycalculation applied to these measurements to obtain the inflexion pointtimes to be used for calculating the length of the vehicle.

In order to ensure that a point having a predetermined reduction inslope from the point of maximum slope is genuine and not due to atransient profile distortion, a further measurement can be made furtheralong the slope away from the inflexion point to confirm that the slopereduction is sustained.

It has been mentioned above that the signal magnitude data availablefrom the sensing apparatus may not be available continuously but only atregular time intervals corresponding to the scanning rate of the sensorenergizing electronics. This can produce quantization effects so that itis not possible to obtain the timing of precise slope values on thesignal profile. In this case, measurements can be made at slope segmentsthat are close to the required slopes on either side of the inflexionand the timing of the inflexion point is then corrected for thedifference between them according to the equation below: $\begin{matrix}{{Time}_{infl} = {{Time}_{low} + \frac{\left( {{Time}_{high} - {Time}_{low}} \right)}{2} + {\frac{\left( {{Slope}_{low} - {Slope}_{high}} \right)}{\left( {{Slope}_{low} + {Slope}_{high}} \right)} \times {Time}_{quantisation}}}} & (3)\end{matrix}$

Where:

Time_(infi) is the calculated time of the inflexion point;

Time_(low) is the time of the mid point of the low magnitude curvesegment with a reduced slope close to the required value;

Time_(high) is the time of the mid point of the high magnitude curvesegment with a reduced slope close to the required value;

Slope_(low) is the height on the y axis of the low magnitude curvesegment used for time_(low);

Slope_(high) is the height on the y axis of the high amplitude curvesegment used for time_(high); and

Time_(quantization) is the time interval between sensor signal samplesforming the signal profile.

In order better to understand the above equation, reference should bemade to FIG. 5.

For the trailing edge of the signal profile the inflexion time can bedetermined from the following equation: $\begin{matrix}{{Time}_{infl} = {{Time}_{low} + \frac{\left( {{Time}_{high} - {Time}_{low}} \right)}{2} + {\frac{\left( {{Slope}_{high} - {Slope}_{low}} \right)}{\left( {{Slope}_{low} + {Slope}_{high}} \right)} \times {Time}_{quantisation}}}} & (4)\end{matrix}$

In order to improve the accuracy of the length measurement, timedifferences can be determined from the signal profiles of both the entryand leaving loops of an installation such as illustrated in FIG. 1.

In order to determine a value for the length of the vehicle from theelapsed time measurement made as above, it is necessary to know thevehicle speed. This may be provided separately by some other speedsensing device, e.g. a radar device synchronized with the loop sensors.However, more preferably, the speed will be derived also from the loopsensor signals in various ways as will be described later herein.

It may be appropriate to modify the length measurement obtained directlyfrom the product of the measured elapsed time and speed by adding anempirically derived correction constant. Other empirically derivedcorrections to the length calculation may also be made to improveaccuracy.

Instead of measuring the elapsed time between inflexion points on theleading and trailing edges of a signal profile, the signal processingunit may instead be arranged to measure the time between points on therespective edges at which the sensor signal has a magnitude which is apredetermined fraction of the nearest adjacent high signal magnitude.The “high signal magnitude” is defined as the magnitude at the nearestminimum in the modulus of the gradient of the profile. In a case wherethe signal profile is as illustrated in FIG. 4, the first point at whichthe modulus of the gradient reduces to a minimum value and then risesagain (is at a minimum) is in fact at the maximum amplitude of thesignal profile. At this point, of course, the modulus of the slope fallsto zero before it rises again (as the slope becomes negative). However,it has been observed that the signal profiles generated by largervehicles may have one or more “shoulders” in the leading or trailingedges of the profiles, such as is shown in the leading edge of theprofile illustrated in FIG. 6. These shoulders occur in larger vehiclesbecause the vehicle is magnetically non uniform. The shoulder mayrepresent a point in the signal profile where a first peak would haveoccurred, but the influence of a more distant but magnetically largerelement of the vehicle approaching the sensor loop has overwhelmed thelocal effect on the loop. It has been found desirable in determining thelength of such vehicles from the leading and trailing edges of thesignal profile produced, to take account of these initial effectsresulting from the front or rear of the vehicle first entering orleaving the sensor loop.

It will be seen that in the case of a shoulder as indicated at 60 inFIG. 6, the gradient of the leading edge declines from a maximum valueto a minimum slope at point 60 before increasing again. Thus, at point60 the modulus of the slope has a minimum at point 60.

It has been found useful to take note of shoulders in the leading ortrailing slopes of the profile only if the shoulder is of sufficientsignificance in relation to the whole edge up to the first magnitudemaximum or peak. With this in mind, a shoulder is taken intoconsideration only if it involves a significant reduction in the slopeof the edge, to approximately 25% or less than the maximum slope on theedge, and if the shoulder point is at a signal magnitude that is asubstantial portion of the nearest signal peak, approximately 65% ormore. Also the shoulder is taken into consideration only if the slope isof significant duration for example continues to be less than 35% of themaximum slope for at least 15% of the total duration of the edge up tothe first peak. Also, it is important that the shoulder is detected inthe signal profiles from both the entry and leaving loops.

Shoulders need only be considered when the application needs to measurethe length of longer vehicles with high accuracy. Otherwise the firstand last peaks greater than 15% of the overall maximum can be consideredas the high signal magnitude.

Where a shoulder is taken into consideration, the magnitude of thesignal value at the shoulder (the high signal magnitude) is taken to bethe magnitude at the point of minimum slope on the shoulder.

In this method of determining the length of the vehicle, the selectedpoints on the leading and trailing edges between which the time durationis measured are selected to have magnitudes which are the same fractionof the nearest peak or shoulder. Thus, looking at FIG. 6, the timeduration is determined between a first point at time t_(leading25) and asecond point at time t_(trailing25). The first point is when the signalmagnitude on the leading edge reaches 25% of the magnitude at theshoulder 60. The second point is when the signal magnitude on thetrailing edge declines to 25% of the magnitude at the adjacent peak 61.The length of the vehicle is then taken to be the time between these twopoints (t_(length25)) multiplied by the measured speed of the vehicle.

25% is considered to be a fraction which can best relate to preciselywhen the front or rear of a vehicle crosses the center point of therespective loop. If other fractions are used to determine the timemeasuring points, corrections may be built in to the calculation usedfor the length. The most appropriate fraction and correction to be usedcan be determined empirically. Further empirically derived correctionsmay be made to the calculated length as required. Also, the time spacingbetween points at several different fractions of the nearest peak orshoulder on the leading and trailing edges of a single profile can bemeasured and each corrected in accordance with appropriate empiricallyderived factors and constants. The various length measurements therebydetermined can then be combined to provide a measure of centraltendency. In addition measurements may be made from the sensor signalprofiles from both the entry and leaving loops.

To provide further confidence in the resulting value, a shoulder or amaximum amplitude value in a signal profile is used in the calculationonly if it is found to be present in the signals from both the entry andleaving loops. For this purpose, if the normalized magnitude at theshoulder or peak is within 10% of the same value in the profiles fromthe two loops, then the shoulders or peaks in the two profiles areconsidered matched.

It is also possible to determine the length of a vehicle from a singlesignal profile by deriving empirically a function which relates theshape of the profile to vehicle length. It is necessary to normalize thesignal profile relative to the amplitude of the highest peak of theprofile. The signal processing unit can then be arranged to determinethe normalized magnitude values of the signal profile at a series oftimes along the profile which, knowing the speed of the vehicle,corresponds to predetermined equal distances in the vehicle direction oftravel. These normalized magnitude values at the predeterminedincremental distances along the profile can then be inserted into theempirically derived function stored in the processing unit in order toderive a value for the vehicle length. In performing this calculation,it is preferable to ignore magnitude variations in a single signalprofile between first and last peaks or high signal magnitudes of theprofile and so it is convenient to set the magnitude value between thepeaks at the normalized value for one or other of the peaks, so as toreduce the complexity of the empirically derived function.

Another method of determining the length of a vehicle uses the signalprofiles from both the entry and leaving loops. Referring to FIG. 7, theentry and leaving loops 70 and 71 are shown overlapping at a time_(eq).It has been found that the value of the magnitude of the profiles at thepoint in time when these magnitudes are equal is approximately linearlyrelated to the length of vehicle. Preferably, the normalized profilemagnitudes are used to find the point of equality on overlap of thetrailing and leading edges. Thus the equal magnitude point illustratedin FIG. 7 is at 28% of the peak amplitude of each of the profiles 70 and71. It should be appreciated that although the profiles 70 and 71 areshown to have identical peak amplitudes in FIG. 7, these are in fact thenormalized profiles and the actual magnitudes of the two peaks need notbe precisely the same. Variations may occur due to differences in theinstallation of the entry and leaving loops or due to suspensionmovement of the vehicle when crossing the loops, or to other causes.

In the case of a loop installation such as illustrated in FIG. 1, it hasbeen found that the vehicle length (length_(eq)) can be related to theequal magnitude value at the point of overlap of the profiles(level_(eq)) by the equation:

Length_(eq)=3+Level_(eq)×4(meters)

where level_(eq) is expressed as a fraction of unity (e.g. 0.28 for theexample of FIG. 7).

The above described technique for determining the length of a vehiclehas the advantage of providing a length measurement irrespective of thespeed of the vehicle passing the sensors. In practice, the processingunit is arranged to record magnitude values from the two sensor loops atleast over the full trailing edge of the signal from the entry loop andthe full leading edge of the signal from the leaving loop. Then thenecessary calculations can be done to normalize the magnitude valuesonce all the values have been recorded, irrespective of the speed of thevehicle and the corresponding time taken for the signals to decline backto the base value.

It can be seen that the above described method of determining thevehicle length can work only in cases where the trailing edge of theentry loop signal and the leading edge of the leaving loop signal do infact overlap to produce an intersection point. This will generally occuronly for relatively shorter vehicles. The minimum vehicle length whichcan be measured in this way corresponds to the minimum vehicle lengthwhich continues to produce a signal in both the entry and leaving loopsas the vehicle travels between the two. If the vehicle is too shortthere is a point at which there is no signal detected in either loop sothat, as shown in FIG. 9, the trailing and leading edges of the twoprofiles do not overlap. This corresponds to level_(eq) from the aboveequation being zero.

The maximum vehicle length which can be measured is as represented inFIG. 8 where the last amplitude peak in the signal profile from theentry sensor coincides with the first amplitude peak of the signalprofile from the leaving sensor, so that again there is no point ofintersection between the trailing and leading edges of the profiles.This corresponds to level_(eq) having the value 1 in the above equation.Thus, for an installation corresponding to that shown in FIG. 1, theabove method is capable of measuring vehicle lengths only between threeand up to about seven meters. Nevertheless, for shorter or longervehicles, the method can still provide an indication of the maximum orminimum length respectively.

Another method of measuring the length which can be used for relativelylonger vehicles and which also does not require a speed measurement isillustrated in FIG. 10.

This method relies on the empirical knowledge of the spacing of theentry and leaving loop centers and that the leading edge of a signalprofile between the point of first detection of a vehicle and the firstmaximum amplitude (or substantial shoulder as defined before)corresponds to a reasonably predictable total distance of movement ofthe front of the vehicle for any particular installation.

For example in an installation corresponding to that shown in FIG. 1, avehicle is first detected when the front of the vehicle is typically 1meter from the center of the entry loop, that is approximately over thefront edge of the entry loop. When the front of the vehicle is directlyover -he center of the entry loop (that is overlapping the loop by 1meter from the front of the loop) the signal from the loop has anormalized magnitude of 25% of the adjacent peak amplitude. The signalmagnitude reaches 75% of the peak when the front of the vehicle isaligned over the rear edge of the entry loop and the first peak in theprofile is reached when the front of the vehicle is 1 meter beyond therear edge of the loop, in fact at the mid point between the entry andleaving loops of the installation of FIG. 1.

The above determinations are made empirically for any particular loopinstallation and the appropriate values can be determined for anyparticular installation.

The position of the front of a vehicle relative to the mid point of theleaving loop is shown along the x axis of FIG. 10, which illustrates thesignal profiles from entry and leaving loops 80 and 81 respectively,corresponding to a relatively long vehicle.

In order to perform the length measurement technique illustrated in FIG.10, the processing unit is arranged to record the magnitude values ofthe sensor signals from both the entry and leaving sensors. Themagnitude values for the two profiles recorded at substantially the sametimes are correlated. Thus, for example, it is possible to determine themagnitude value of a point 82 on the entry loop profile 82 whichcorresponds in time with a point 83 on the leading edge of the leavingloop profile 81 which has a magnitude at 25% of the amplitude of theadjacent peak 84 on the profile 81.

The processing unit is then further arranged to provide a profilecorrelating function which can compare the profile of the entry andleaving loop signals to identify points on the profile of one loop whichcorrespond in terms of profile position to points on the profile fromthe other loop. This is possible because the processing unit has arecord of the signal magnitude value for both profiles. It is thereforestraightforward for the processing unit to track through its record ofmagnitude values for one profile to identify a point in the profilewhich corresponds to any particular point in the other profile.

Thus, once the point 82 on the entry loop profile in FIG. 10 has beenidentified, the corresponding point 85 on the leaving loop profile canbe determined by profile correlation. It should be understood that,whereas point 82 is time correlated with point 83, i.e. was recorded atthe same time, point 85 is profile correlated with point 82, i.e. wasrecorded at a different time but is in the co-responding position in thetwo profiles.

The shift between the points 82 and 85 corresponds to a shift along thelength of the vehicle equal to the distance between the centers of theentry and leaving loops, 4 meters in the example of FIG. 1. Thus, thepoint 85 on the leaving loop profile corresponds to a position where thecenter of the leaving loop is 4 meters from the front of the vehicle.

Having identified the point 55, the processing means can now perform arepeat time correlation to identify the time correlated point 86 on theentry loop profile which was recorded at the same time as point 85 onthe leaving loop profile. This newly identified point 86 on the entryloop profile may again be profile correlated with a point 87 on theleaving loop profile. This point 87 now corresponds to the center of theleaving loop being 8 meters from the front of the vehicle.

The point 87 may again be time correlated with a point 88 on the entryloop profile and the point 88 once again profile correlated with a point89 on the leaving loop profile. This point 89 now corresponds to thecenter of the leaving loop being 12 meters from the front of thevehicle. One further iteration of time correlation to point 90 andprofile correlation to point 91 identifies a point on the leaving loopprofile which corresponds to the front of the vehicle being 16 meters infront of the center of the leaving loop.

At this point, the processing unit can determine that point 91 is infact on the trailing edge of the leaving loop profile and can alsodetermine the normalized magnitude of the point 91 relative to theimmediately preceding peak amplitude on the profile. For example, in theexample of FIG. 10, point 91 is at approximately 46% of the amplitude atpeak 92.

From an empirical knowledge of how the trailing edge of a profilerelates to the position of the tail of a vehicle, the processing unitcan make a further calculation to determine an additional lengthcomponent to be added to the 16 meters already determined for the lengthof the vehicle. In an installation corresponding to that shown in FIG.1, a suitable additional component can be calculated as (46−25)/50=0.42meters.

Accordingly, the overall length of the vehicle can be calculated as16.42 meters.

An additional constant correction may be applied derived by empiricaltesting.

It may be appreciated that the above procedure may be repeated for anumber of different starting positions on the leading edge of theleaving loop, with an appropriate correction being made for theempirically derived position of the point of starting the measurementfrom the center of the leaving loop. The various measurements derivedmay be combined to obtain a value for the central tendency.

Also, although the process has been explained by starting with apredetermined point on the leading edge of the leaving loop, the processcould also be performed by starting with a predetermined position on thetrailing edge of the entry loop and working forward in time along theprofiles until reaching a point on the leading edge Of the entry Loop.

Importantly, the above procedure can be performed irrespective of thespeed of the vehicle. The profile correlation can be performed usingonly the way in which the magnitude values of each of the two profilesvaries.

A further static method for determining vehicle lengths is illustratedin FIG. 11. In this method, the processing means is arranged to recordthe magnitude values for the profiles from the entry and leaving loops95 and 96, at least from the amplitude peak or high signal magnitude ofthe entry loop profile 95 over the trailing edge of the profile, andover the leading edge of the leaving loop profile 96 up to its firstamplitude peak or high signal magnitude. Then, the normalized magnitudevalues in the trailing and leading edges of the two profiles at a numberof different time points are measured. These pairs of normalizedmagnitude values taken at individual time points can be used directly toderive a value for the length of the vehicle.

In a simplified form, the time points are determined to correspond withpredetermined normalized amplitude values on one of the two edges. Thenit is necessary only to record the normalized magnitude values at thesetime points on the other of the two edges and use these values in anempirically derived function to provide a value for the vehicle length.

In the example illustrated in FIG. 11, normalized magnitude values aremeasured on the trailing edge of the entry loop profile 95 at timescorresponding to normalized magnitude values on the leading edge of theleaving loop profile 96 of 10%, 20%, 30%, etc. up to 100%. Thus, the 10%magnitude value on the leaving loop profile 96 produces sample 1 fromthe trailing edge of the entry loop, the 20% value produces sample 2 andso forth. These samples can be directly introduced into an empiricallyderived function relating these sample values to vehicle length.

The advantage of this technique is that it is relatively insensitive totransient distortions of either profile, e.g. resulting from suspensionmovement of the vehicle.

If any samples are taken at a time earlier than the last peak of theprofile, then these samples are set at a normalized height of 1.0 (100%)in order to reduce the complexity of the transfer function used. Thiscan occur, for example, if the two profiles in FIG. 11 are closertogether so that the 10% sample from the leading edge of profile 96corresponds to a point on profile 95 before the peak of the profile.

It can be seen that this technique is again useful only for relativelyshorter vehicles and for an installation corresponding to that in FIG.1, the method can be used to determine lengths only between about 3 and7 meters.

An important part of many vehicle sensing installations is to be able tohandle high traffic flows and stop-start driving conditions. Existinginstallations are unreliable under these conditions.

The above described static methods of measuring vehicle lengths may beparticularly useful in traffic monitoring in high congestion conditions.It is also important that the entry loop of a detection loop pair iscleared ready for a subsequent vehicle detection event as soon as thesignal profile from the loop has declined substantially to zero, even ifthe signal from the leaving loop of the pair is still high. Theprocessing unit is arranged to capture all the data from the entry loopand hold this data available for appropriate comparisons with the datafrom the leaving loop once this becomes available. The processing unitis simultaneously then able to record fresh signal data from the entryloop, which would correspond to a following vehicle, even while stillreceiving data from the leaving loop corresponding to the precedingvehicle.

Indeed, it is an overall unifying concept of the various aspects of thisinvention that the signal processing unit records all the signalmagnitude data from the two sensors of a road vehicle sensing apparatusof the type defined with two successive sensors, and includes means forprocessing this data to derive vehicle characteristic information onceall the data has been received and recorded. The processing unit can bearranged to separately record data from the entry sensor correspondingto a second vehicle, whilst still recording data from the trailingsensor corresponding to the first vehicle. For installations in acarriageway of a multi lane highway, the signal processing unit is alsoarranged to record all the signal magnitude data from the sensors in alllanes, for subsequent processing as required.

A further important characteristic of a useful road vehicle sensingapparatus is to be able to identify gaps between vehicles travellingvery close together so that tailgating vehicles can be separated evenwhen their sensor profiles overlap.

One method of detecting tailgating involves the processing unitmonitoring a characteristic of the profiles of signals from the entryand leaving sensors and comparing the characteristic of a profile fromthe entry sensor with fric the leaving the next following profile fromthe leaving sensor and providing a tailgating indication if there is asubstantial difference between these characteristics.

The selected characteristic may be the signal magnitude at a minimum inthe profile from the two sensors.

If a minimum occurs in the profiles from the entry and leaving sensorswhich has a magnitude (normalized relative to the peak amplitude of theprofiles) which is less than a predetermined threshold, and issubstantially different in the profiles from the two sensors, thentailgating is 10 indicated. This would arise when two vehicles followingclosely behind one another cross the entry and leaving sensors withdifferent spacings between the two vehicles so that the minimum signallevel in the joint profiles is different from the two sensors.

It may be necessary to ensure that the detected minimum is genuine bychecking also if the profile magnitude after the minimum rises above asecond threshold higher than the first threshold. In one arrangement,the processing unit is arranged to consider minima only if they satisfythis criterion.

Tailgating may also be detected if there is a minimum in the profilefrom the entry loop satisfying the required criterion and where theprofile from the leaving loop drops substantially to zero before risingagain. This corresponds to the case where two vehicles are closetogether when passing over the entry loop but the first vehicle clearsthe leaving loop before the second vehicle is detected by the leavingloop.

Tailgating may also be indicated if there is a substantial minimum inthe profile from the leaving loop even though the profile from the entryloop had previously dropped to zero. This would correspond to the casewhere a vehicle has past normally over the entry loop, clearing itbefore a second vehicle is detected by the entry loop, but the secondvehicle then comes very close to the first vehicle before the firstvehicle clears the leaving loop.

It may be necessary to make the threshold for detecting a minimum inthis particular case lower than the predetermined threshold used fordetecting tailgating when minima are found in the profiles from bothloops. This is necessary to avoid indicating tailgating when a singlevehicle having a minimum in its profile which would be normally slightlyabove the main threshold used for both the entry and leaving loops butis transiently below this threshold as the vehicle passes the leavingloop, e.g. due to suspension movement or other variables between the twoloops.

The main threshold used for detecting minima in both entry and leavingloops can be made dependent on traffic speed. A level of 30% of theprofile maximum amplitude may be satisfactory as a minimum detectionthreshold at low speeds, dropping to zero at speeds in excess of 7meters per second. This can achieve a high vehicle count accuracy inmost conditions. To reduce the minimum detection threshold at highervehicle speeds is not essential for operation of the tailgatingdetection algorithm, but can slightly improve count accuracies at thesehigher speeds.

In order to determine whether minima detected in the entry and leavingsensor profiles are significantly different, a difference of about 10%in magnitude is considered sufficient.

If the method is arranged to reduce the minimum detection threshold athigher speeds, then a value or speed must be obtained. An approximatespeed value can be determined by measuring the time between differentpredetermined normalized magnitude levels on the leading or trailingslope of a signal profile. For example, in the installation illustratedin FIG. 1, it has been shown empirically that for most vehicles, thedifference on the leading edge of a profile between the signal magnitudeof 25% of the nearest peak (or high level) and 75% corresponds tomovement of the front of a vehicle by 1 meter. Thus, if the time betweenthe attainment of these two values on the leading edge of a profile ismeasured, the approximate speed of a vehicle can be determined directly.Different calculations can be made for different selected thresholdlevels and in different installations.

In order to measure the speed of vehicles passing over the detectorloops, the time difference can be measured between correspondingfeatures in the signal profiles from the entry and leaving loops.Knowing the spacing of the loops in a particular installation, the speedcan be calculated directly.

However, two factors can lead to the speed measured in this way beingdifferent from the actual speed of the vehicle. The First is when theroad vehicle sensing apparatus produces sensor signal values at discretesampling times, corresponding to the scanning rate between the variousloops of the installation. Then, the actual time of occurrence of aparticular feature in a signal profile is indeterminate by plus or minushalf the sampling period (which may be 6 mS or more). This can representa speed measurement error of about ±2½% at 70 mph using a base linecorresponding to the spacing of the centers of the entry and leavingsensors of 4 meters.

The second factor introducing errors is that transient distortions ofthe signal profile can cause a particular profile feature being used forthe speed measurement to appear slightly before or after its correcttime.

The first of these factors can be addressed by interpolating betweenindividual signal magnitude level samples received at the sampling rate,to discover the correct timing for a particular feature (e.g. a requiredmagnitude value). In the particular case where the profile feature beingused for the speed measurements is a particular signal magnitude,ordinary linear interpolation can be used to find the correct timebetween two samples on either side of the desired magnitude.

When the required feature on each profile is a profile peak or trough,then a form of interpolation can also be used using the differencesbetween the intended peak or trough value and the magnitude valuesobtained which are closest to the peak or trough values. If the highestmagnitude value obtained at the sampling rate is at time T₁ (or thelowest when the required feature is a trough), S₁ is the differencebetween this highest sample value and the preceding sample value and S₂is the difference between the highest value and the next sample value(at time T₂) then the interpolated time T_(feature) of the featureitself is given by:$T_{feature} = {T_{1} + {\left( {T_{2} - T_{1}} \right) \times \frac{\left( {S_{1} - S_{2}} \right)}{\left( {S_{1} + S_{2}} \right) \times 2}}}$

In order to deal with the second factor producing errors in speedmeasurements, multiple matched profile features can be used from the twoloop profiles. For example, multiple levels on leading and trailingprofile edges can be timed relative to corresponding levels on the edgesof the other profile and a speed measurement obtained for each matchedpair. Then error theory can be used to determine the central tendency ofthe resulting values.

Throughout the preceding description, it should be understood that whereexamples of the invention have been described in relation to aprocessing unit or processing means arranged to perform the variousfunctions, the examples could also be considered as methods orprocesses. In practice, the various aspects and features of theinvention may all be provided as software algorithms controlling asuitable data processing unit.

The invention contemplated herein is constituted not only by a signalprocessing apparatus for processing said signals from a road vehiclesensing apparatus of the type defined preferably for a multi lanehighway and with two successive sensors in each single lane, but is alsoconstituted by a road vehicle sensing apparatus in combination with thesignal processing apparatus described.

There follows a description of the software structure which may becreated to implement the various processing steps described above. Thefollowing description is made in terms of various software modules,forming State Machines, which will be understood by those familiar withprogramming techniques.

1. SYSTEM OPERATION

Referring to FIG. 12, the system takes data from loop detectors,conditions the data via a Loop state machine if required, and processesthe data from loop pairs in each lane to determine events that representthe passage of vehicles over each lane's detector site. The purposes ofeach element in FIG. 12 are:

Loop State Machine:

To condition the data from each loop, for example to subtract anyresidual baseline from the data, to apply gain variation if thesensitivities of the loops varies, to track the baseline if it drifts.

To detect if a loop has entered a fault state.

The nature of the loop state machine, and the need for such will dependentirely on the nature of the detectors used.

Lane Processing:

To manage the event state machines receiving data from the loop pair ina lane.

To direct the data from the loops in a lane to the appropriate eventstate machines, as determined by the operation of those state machines.

To maintain configuration information for each lane, for example thedimensions of the detection site.

Event State Machine:

To receive data from a loop pair in a lane and determine when vehicleshave passed over the site.

To interact with a Tailgating state machine to determine when asignature indicates that two vehicles are tailgating.

To interact with the Event state machines handling the data for thelanes on each side (if there are such lanes), to determine when avehicle is straddling the two lanes.

Tailgate State Machine:

To determine when a signature indicates that two vehicles aretailgating.

To determine the point in the signature where it must be split so thatthere are separate signatures for each of two vehicles that aretailgating. This must be done for both loops in a lane if both loopsdisplay tailgating signatures.

The input data is normally samples of the output from the loop detectorstaken at regular intervals, although other presentations can beprovided. The output data depends on the nature of the application, butmay be:

Records describing each vehicle passing over the site, for example thespeed, length, time over each loop, time at which the vehicle startedand ended its site traversal, and the signature of the vehicle over eachloop.

A summary of the traffic over the site during a period.

An alarm for vehicles meeting certain criteria such as speed or length.

Other data as required.

In operation, data is received and conditioned by the Loop statemachines, and passed to the event state machine for examination.

There are multiple event state machines simultaneously available foreach lane, and several may be actively processing events in each lane atany time. The need for multiple machines can be understood by mentallyfollowing the progress of vehicles over the detection site. Consider thecase of two vehicles travelling close one behind the other in a lane. Asthe first passes over the site and is proceeding over the exit loop, thesecond may already be starting to pass over the entry loop. Since thepurpose of an Event state machine is to track the progress of a vehiclefrom entry onto the site until it is completely clear of the site, itcan be seen that in this case two state machines are required. One ishandling the vehicle currently moving off the site, and one the vehiclecurrently moving onto the site.

The possibility of vehicles straddling between lanes increases the needfor more active Event state machines, particularly where there are morethan two lanes in a carriageway. Suppose on a three lane carriagewaythat there is a long vehicle with three cars at its side, and all arestraddling lanes because of an obstruction. It is not possible to besure that the truck is not several tailgating vehicles until it hascompletely passed over the detection site, and all of the cars alongsidemust remain part of the double detection configuration until the last ofthe four vehicles is off the site, when the whole configuration can befully evaluated. All of the state machines must remain active until thistime, so more are needed.

The operation of the Event state machines depend on the data presented,previous data presented, the states of the state machines handling thelanes on either side, the mode of the system, and the state of the loopdetectors. The Lane Processing module directs loop data to theappropriate state machine under direction from the Event state machinesthemselves, which decide which loops in a lane each should be receivingdata from, depending on the signature presented.

The Event state machines are associated with a Tailgate state machinewhen they are active, and pass information to their Tailgate statemachine so that it can determine if tailgating is occurring. Therelevant information is the locations of maxima and minima in the data,and when the loops drop out of detection.

If the Tailgate state machine determines that tailgating is occurring,it will split the signatures obtained by its associated Event statemachine at the appropriate point. Frequently it will be necessary for aTailgate state machine to find an unused Event state machine to movepart of the signature to. It then sets the states of the Event statemachines to be compatible with the new view of the data and directs loopdata to the appropriate Event state machine. Following this theprocessing of data proceeds as normal.

Following sections describe the operation of Event and Tailgate statemachines. The loop state machine is not described because it isdependent on the particular detectors used.

2. THE STATE MACHINES

2.1 The Event State Machine

FIGS. 13A and 13B from the transition diagram for the Event StateMachine.

2.1.1 Description of States

Notes:

1. An “event” is a sequence of individual loop detections indicating thepassage of a vehicle over or near one or both of the loops in a trafficlane.

2. The “first” loop in an event is usually the entry loop. It will bethe exit loop when a vehicle is traversing the site in reverse.Similarly the “second” loop is usually the exit loop.

3. A double detection “configuration” consists of a set of adjacentlanes simultaneously processing events that meet the criteria forpossible lane straddling vehicles, such that each lane considers one ortwo of the adjacent lane events as a potential straddling “partner”.Such a configuration is “completed” when all of the events in theconfiguration have individually completed.

4. An individual event has “completed” when both loops have gone out ofdetect and the state machine is not in the “ClearPending1” state, or atailgating event has been determined as occurring and both loops havebeen switched to the following event.

Clear:

The state machine is in the Clear state when it is operating normallyand no detection is occurring.

InDetect1:

The state machine is in the InDetect1 state when a detection isregistered on a single loop indicating that a vehicle is starting totraverse the site. Normally the detection is on the entry loop, but if areverse event is occurring, it will be over the exit loop.

InDetectBoth:

The state machine is in the InDetectBoth state when a vehicle is beingdetected by both loops as it traverses the site.

InDetect2:

The state machine is in the InDetect2 state when a vehicle is beingdetected by the second loop only, completing its traversal of the site.

ClearPending1:

The state machine is in the ClearPending1 state when a detection hasoccurred on the first loop which has subsequently dropped out of detectbefore the second loop has been activated. This may occur, for example,if a very short vehicle is traversing the site or if the loops arewidely separated lengthwise.

InDetect2Pending1:

The state machine is in the InDetect2Pending1 state when a detectionoccurs on the second loop after the ClearPending1 state, and usuallyindicates that a short vehicle is traversing the site.

Err1Active2Gone:

The state machine is in the Err1Active2Gone state when both loops havebeen normally activated, and the second then drops out before the first.This can indicate an error condition, or that an unusual configurationof vehicles has occurred.

WaitOtherLane:

The state machine is in the WaitOtherLane state when one or more doubledetections is occurring (that is, there may be a vehicle straddling twolanes), and at least one of the other lanes in the configuration has notindividually completed.

LoopFaulty:

The state machine is in the LoopFaulty state when one or both loops in alane have been determined as faulty. The state machine will stay in theLoopFaulty state only if both loops remain faulty.

LaneOff:

The LaneOff state is provided to enable the state machine to beconfigured to ignore all data.

WaitRealData:

The state machine is in the WaitRealData state when it has determinedthat adjacent lane spillover signals are merged with a genuine in-lanedetection on the first loop of a lane, and we have to wait for thein-lane detection to start on the other loop.

AfterTransferState:

The state machine is transiently in the AfterTransferState state when ithas been determined that a tailgating event has occurred from the secondloop data only, and parts of the current signature have been transferredto another state machine instance for further processing. Thedisposition of the current event data left with this state machineinstance is then determined from the AfterTransferState state.

ResolveRejection:

The state machine is transiently in the ResolveRejection state when amember of a double detection configuration has been subsequentlydetermined as being a separate event, and no longer part of theconfiguration. When this happens, decisions need to be taken aboutwhether events can now complete, or whether there are still othermembers of the configuration to complete, and these decisions are takenin this state.

SingleLoopClear:

The state machine is in the SingleLoopClear state when one loop of apair in a lane is faulty and the other operational, and there is nodetection currently occurring. When one loop is operational and theother faulty, the lane is operating in “single loop mode”

SingleDetect:

The state machine is in the SingleDetect state when a detection isoccurring in single loop mode, and a good speed determination has notyet been made.

SingleDetectSpeedOk:

The state machine is in the SingleDetectSpeedOk state when a detectionis occurring in single loop mode and a good speed determination has beenmade.

WaitotherSingle:

The state machine is in the WaitotherSingle state when in single loopmode and the event is part of a double detection configuration, and oneor more of the other members of the configuration have not yetcompleted.

SingleSpurious:

The state machine is in the SingleSpurious state when in single loopmode and a bad speed determination has been made, and the event is to berejected as spurious, but the loop is still detecting.

2.1.2 Description of Transitions

Noop: Do nothing

Activated when: There is nothing to be done i.e. In the states: Clearwhen there is no new data from the detector;

ClearPending1 when neither loop is detecting, and the timeout is not yetreached;

singleLoopClear when there is no new data from the detector; LoopFaultywhen both loops have gone out of fault state but the anti-togglingtimeout has not been reached;

Err1Active2Gone when the state of the second Loop being not detectingand the first detecting is maintained, and no fault condition has beendetected.

Associated action: None

NothingYet: No vehicle is being detected

Activated when: The state machine is in one of the clear states (Clearand SingleLoopClear), and new data arrives from the detection loops.

Associated action: None.

AccumulateInput1: Accumulates the signature of this event when the firstloop is detecting.

Activated when: The state machine is in the InDetect1 state and newinput arrives showing the first loop is still detecting and the secondis not detecting.

Associated action: The new data for the first loop is accumulated as anew element of the signature of this detection. If a maximum or minimumoccurs in the signature, a check is made for evidence of tailgating.

EventStarts: Register the start of a new event when the first loopdetects.

Activated when: The state machine is in the Clear state and theamplitude of the signal from the first loop reaches the detectionthreshold.

Associated action: The current time is recorded as the event start time,and the data value for the first loop starts the event signature. If thedetection occurs on the entry loop, the direction of the event is set tonormal and the entry loop is set as the first loop, and if the detectionoccurs on the second loop, the direction is set to reverse, and the exitloop is set as the first loop. If the first and second loops arecurrently being processed by different state machines and the statemachine that was previously processing this lane is in the ClearPending1state and the state machine processing the second loop is in the stateor InDetect2 or InDetect2Pending1, then the second loop state machine ischecked for the existance of tailgating. If there is evidence oftailgating, the second loop state machine is completed. If there is not,the previous state machine is forcibly cleared, and its data discarded.

EventCont1: Register the change from the first loop detecting alone toboth loops detecting.

Activated when: We are in the InDetect1 state and the amplitude of datafrom the second loop goes above the detection threshold, or we are inthe Err1Active2Gone state and the second loop detects again.

Associated action: The detection time of the second loop is set to thecurrent time, and the data value for both loops is added to the eventsignature. If a maximum or minimum occurs in the signature, a check ismade for evidence of tailgating.

EventCont2: Registers that the first loop has now ceased detecting, andthat the second is still detecting.

Activated when: We are in the InDetectBoth state and the first loop goesout of detect and the second is still detecting.

Associated action: The end time for the first loop is set to the currenttime. The data from the first loop is directed to an unused statemachine instance, and the current state machine is set as the previousmachine of the first loop. The data for both loops is added to thesignature for this event. A check is made for evidence of tailgating.

EventCompletes: Registers the end of a normal (not a doubledetect)event.

Activated when: Both loops are no longer detecting, the data is of atype that indicates this is not a spurious event, and this lane is notinvolved in a double detection configuration, i.e. from the states:

InDetect2 when the second loop drops out of detect;

AfterTransferState when the part of the signature remaining aftertransfer of the next vehicle's component meets the above criteria; and

ResolveRejection when the current event is left with no double detectionpartners, i.e. has become a normal event.

Associated action: The end time for the second loop is set to thecurrent time. The data from the second detection loop is added to thesignature.

The speed and length of the vehicle are determined. The times the loopswere occupied are determined. The direction of the event is established(forward or reverse). Details of the event and its signature are outputas required by the particular application. Data from the second loop isre-directed to the state machine previously selected for the first loop(this happened in the EventCont2 transition).

Correlating: Add new data for both loops, with both detecting.

Activated when: Both loops are detecting, and new data arrives thatdoesn't change that condition.

Associated action: Add the new data for each loop to the signature foreach loop.

Premature2End: Handles the case where the second loop has unexpectedlydropped out of detect before the first.

Activated when: The second loop drops out of detect before the first inthe state InDetectBoth.

Associated action: The end time for the second loop is set to thecurrent time. The data for both loops is added to their signatures. Acheck is made for evidence of tailgating.

ShortEvent1: Registers that the first loop has dropped out of detectbefore the second has started detecting.

Activated when: The first loop drops out of detect before the second isdetecting in the state InDetect1.

Associated action: The same as for EventCont2.

SpuriousEvent: Handles the case of the data associated with an eventbeing considered spurious, for example low level spillover from theadjacent lane.

Activated when: The event is completed, (either by tailgating beingdetected, both loops going out of detect, or from the ClearPending1state, the timeout being exceeded or a forced end being received), andThe data is evaluated as spurious. The data is considered spurious if:

Either of the loops maxima is below the spurious level (e.g. anamplitude of 20 for Peek MTS38Z

MkII), the time for the event is too short (e.g. 70 milliseconds for astandard 2-2-2meter loop configuration), or the event is not part of adouble detection configuration, and the length of the event is too long(normally greater than 5 seconds), and amplitude of the signature maximadiffer by more than 50%.

Associated action: The data is discarded. If the event is part of adouble detection configuration, it is removed from the configuration (ifthe configuration is ready for completion after this action, it iscompleted). If the state machine is in ClearPending1 state and the Eventstate machine currently receiving data from the second loop is in theInDetect2 state, then increment its count of “other loop detections”(when this reaches a threshold, the loop will be considered in a “stuckon” fault state), else set the state machine receiving input from thesecond loop to be that receiving input from the first. Evidence oftailgating is checked for.

PossibleCycle: Registers that the second loop has entered detectsubsequent to the first loop dropping out, and before the timeout hasoccurred indicating a short vehicle is traversing the loops.

Activated when: The state machine is in ClearPending1 and the secondloop goes into detect.

Associated action: The same as EventCont1.

ShortEventCompletes:Same as EventCompletes.

DoubleBoth: Both entry and exit loops have registered a valid doubledetect (a straddling vehicle).

Activated when: A double detection configuration is ready forcompletion, i.e. all individual events within the configuration arecompleted.

Associated action: The first step is to decide how many vehicles are inthe double detection configuration. If there are two lanes involved inthe 10 configuration, a check is made to see if the signatures stilllook like a straddling vehicle now that the events are completed. Ifthey do, there is one vehicle, else there are two. If three lane areinvolved we assume there are at least two vehicles in the configuration,and a test is made to see if we have three by checking the signatures.If there are 4 or more lanes in the configuration, the number ofadjacent lane pairs not showing as having straddling vehicles isdetermined. If all show as having straddling vehicles with a similaramplitude, this is assessed as the configuration having a vehiclestraddling every second lane. Where a lane pair has a geometric mean afactor of two or more higher than the others, this is interpreted asbeing two vehicles straddling in adjacent lanes. Where a mean isconsiderably higher, this is interpreted as this being from a vehiclein-lane in lane n, where n is the lane with the higher signaturemaximum, and there being a vehicle straddling lanes n−1 and n−2, or n+1and n+2, depending on the positioning of the high signature in thedouble configuration.

Having decided on the vehicle locations, each lane pair having astraddling vehicle is examined, and a decision is made as to which ofthe two to use as the primary signature (the signature that will be usedfor assessing vehicle length and speed). Call these lanes n and n+1. Ifthere is a vehicle also straddling lane n−1 and lane n and no vehiclestraddling lanes n+1 and n+2, then if the lesser of the two maxima ofthe signature of lane n+1 is above a threshold (e.g. an amplitude ofgreater than 45), then it is selected as the primary. The converse istrue if there is a vehicle straddling lanes n+1 and n+2 and no vehiclestraddling lanes n−1 and n. Otherwise the signature having the higherabsolute maximum value is used as the primary. The lane pair is nowprocessed as a double detection, which is as for a normal completedevent using the primary signature, unless specific properties of doubledetections are to be output.

Each lane assessed as having a vehicle in-lane (not straddling) isseparated for the remainder of the configuration and treated as a normalcompleted event.

If the data from the two loops in the lane that completed last in theconfiguration are being directed to different state machines, the statemachine receiving input from the first loop is assigned the data fromthe second loop.

DoubeBothpending: Handles the case where an event involved in a doubleconfiguration completes, but the configuration is not yet ready forcompletion (other events involved are not completed).

Activated when: An event in a double configuration completes, but theconfiguration is not yet complete (there is one or more other events inthe configuration that are not completed).

Associated action: The end time for the second loop is set to thecurrent time. The data from the loop is appended to the signature forthe second loop, and the speed of the vehicle is obtained if the data isabove the spurious level. A check for tailgating is carried out.

DoubleBothCompletes: Handles the case where a state machine has been inthe WaitOtherLane state because it is part of a double detectionconfiguration, and the configuration has now completed.

Activated when: A state machine is in the WaitOtherLane state and thedouble detection configuration has completed.

Associated action: Return the state machine to the pool for re-use.

Error1Ends: The second loop has unexpectedly dropped out before thefirst, and now the first has also dropped out.

Activated when: The state machine is in the Err1Active2Gone state andthe first loop drops out of detect.

Associated action: As for SpuriousEvent.

IntoFaultState: The detectors have been operating normally, and have nowgone into fault state.

Activated when: The detectors indicate a fault in any normal processingmode, or both loops indicate a fault in single loop mode, or one of theloops appears to be stuck on in inDetect2 and Err1Active2Gone states.The stuck on state is determined by there being multiple other loopdetections in either of these states.

Associated action: A timeout is set to prevent rapid toggling into andout of the fault state. If the data from one of the loops is beingdirected to another state machine instance, the data is re-directed tothis state machine and the other state machine is reset, afterseparating it from any double detection configuration it is involved in.If this lane is involved in a double detection configuration, then it isseparated from the configuration. Any fault reporting required by theapplication is carried out. The tailgate state machine for this lane isreset.

Separating a lane from a double detection configuration involvesbreaking the links with the adjacent lanes, then completing theremainder of the configuration if it is ready for completion inconsequence.

RenewTimeout: Handles the case where The state machine is in the faultstate, and both loops are still faulty.

Activated when: The state machine is in the LoopFaulty state and thefault condition is still present. That is, both loops are still showingas faulty, or the stuck-on loop is still stuck on.

Associated action: The anti-toggling timeout is re-established.

Turnoff: A command has been received to turn off the lane.

Activated when: The turn off command is received.

Associated action: The state machine is reset.

TurnOn: A command has been received to turn on the lane, and it waspreviously turned off.

Activated when: The state machine is in the LaneOff state and a commandis received to turn it on.

Associated action: None

OutOfFaultState: Handles the case where a fault has cleared.

Activated when: The fault condition has completely cleared and neitherloop is detecting.

Associated action: Logs the end of fault condition if required.

SpuriousShort: Handles the case of spurious data appearing in the firstloop while the second loop is still activated with an event.

Activated when: The state machine is in InDetect1 and the first loopgoes out of detect, and the second loop is still handling a differentevent, and the amplitude of the first loop data is less than a threshold(e.g. 40), and a check for tailgating on the second loop shows that itis not tailgating.

Associated action: The event is separated from any double detectionconfiguration it is involved in, and the state machine is reset.

Tailgate: Handles the case of a vehicle being tailgated by another whenneither are involved in a double detection configuration.

Activated when: A check for tailgating indicates that tailgating isoccurring, and the event is not involved in a double detectionconfiguration, and the state machine is in one of the states:InDetectBoth, InDetect2, or Err1Active2Gone.

Associated action: The same as EventCompletes (the signatures havealready been separated by the Tailgate state machine).

DoubleTailgate: Handles the case of a vehicle being tailgated by anotherwhen it is involved in a double detection configuration.

Activated when: A check for tailgating indicates that tailgating isoccurring, and the event is involved in a double detectionconfiguration, the configuration is ready for completion, and the statemachine is in one of the states: InDetectBoth, InDetect2, orErr1Active2Gone.

Associated action: The same as DoubleBothCompletes.

DoubleTailgatePending:Handles the case of a vehicle being tailgated byanother when it is involved in a double detection configuration.

Activated when: A check for tailgating indicates that tailgating isoccurring, and the event is involved in a double detectionconfiguration, the configuration is not ready for completion, and thestate machine is in one of the states: InDetectBoth, InDetect2, orErr1Active2Gone.

Associated action: The same as DoubleBothPending.

RejectPendingDouble:Handles the case of an event that was initiallythought to be part of a double detection configuration, and is now knownnot to be.

Activated when: In the states AfterTransferState, InDetect2 orInDetect2Pending1, a completing event that is part of a double detectionconfiguration is now found not to be.

Associated action: The event is separated from the double configurationon the side(s) where the configuration is found to be no longer valid.

ActuallyTwoVehicles: Handles the case of a pending event that is part ofa double configuration where the partner just completing has establishedthat it is not part of the configuration.

Activated when: A state machine is in the WaitOtherLane state and it iscalled with an indication that has been separated from a doubledetection configuration.

Associated action: If the event is still part of a double (with the laneon the other side), then the configuration is completed as a double,else this is completed as a separate event.

SpuriousReverseDetected: Handles the case where a reverse event is foundto be the result of adjacent lane spillover merging with the start of areal event in this lane.

Activated when: The event direction is reverse, the first loop datamaximum is less than a threshold (e.g. 40), and the second loop dataamplitude exceeds a given multiplier of the first loop amplitude (e.g. 4times).

Associated action: The data from the current first loop is discarded.The data from both loops is directed to this state machine. The datadirection is set to normal, so the current first loop becomes the newsecond loop, and the current second loop becomes the new first loop. Thedata received is accumulated.

WaitingForRealSignature: Handles the case subsequent to a spuriousreverse being detected while waiting for the second loop data toindicate that data from a real signature is now arriving.

Activated when: The state machine is in the WaitRealData state and thesecond loop is still detecting, and the data amplitude is still below athreshold (e.g. 40).

Associated action: Append the data for the first loop to the first loopsignature.

GotRealDataStart: Handles the case subsequent to a spurious reversebeing detected when the second loop data indicates that real data is nowarriving.

Activated when: In the WaitRealData state the first loop is stilldetecting, and the second loop data is greater than a threshold (e.g.40).

Associated action: The same as for EventCont1.

LeadingMergeEnds: Handles the case subsequent to a spurious reversebeing detected when the second loop drops out of detection.

Activated when: The second loop drops out of detect in the stateWaitRealData.

Associated action: Append the data for the firs: loop to the first loopsignature.

TransferDataToNext: Handles the case where an apparently normal eventhas proceeded to the InDetect2 state, and it appears that there is afollowing second loop signature merged with this signature.

Activated when: The state machine is in the InDetect2 state, and thedirection is forwards, and the second loop signature rises to greaterthan a given multiplier of the first loop signature (e.g. 4).

Associated action: The data from the second loop is appended to thesecond loop signature. The point in the second loop signature where thenew signature data started is located. The data after this point for thesecond loop is transferred to the state machine receiving data from thefirst loop. The state of that state machine is set to InDetectBoth. Thesecond loop detector data is directed to that state machine.

TransferDataAtDrop: Handles the case where spill-over data from anadjacent lane giving an apparent reverse event has merged with the startof a real forward direction event on the entry loop only.

Activated when: The state machine is in the InDetect2 state, the eventdirection is reverse, the second loop has dropped out of detect, thefirst loop signature peak is less than a threshold (e.g. 40), The secondloop signature peak is greater than a given multiple of the the firstloop peak (e.g. 4 times), and the event is not part of a doubledetection configuration.

Associated action: The second loop detector data is appended to thesecond loop signature. The second loop (i.e. the entry loop, since thecurrent even is a reverse event) data is transferred to the entry loopof the state machine currently handling the exit loop. If the eventbeing handled by this state machine is involved in a doubleconfiguration, and there there is no double configuration being handledby the state machine handling the exit loop data, then the the doubleconfiguration is passed to the exit loop state machine. The state of theexit loop state machine is set to InDetect2. The direction of the exitloop state machine is set to normal. The state machine handling theentry loop is reset and left handling the entry loop.

FaultToSingle: Handles the case where only one loop is in the faultystate and the other is operating satisfactorily, so it can be used forsingle loop operation.

Activated when: The state machine is in the LoopFaulty state, and oneloop is not faulty.

Associated action: The fault state is reported if required by theparticular application.

SingleToClear: Handles the case where one loop which was faulty startsoperating correctly gain.

Activated when: The state machine is in the SingleLoopClear state andboth loops start operating Correctly.

Associated Action: None.

SingleToFault: Handles the case where the system is operating in singleloop mode, and both loops go faulty.

Activated when: Both loops become faulty in any of the single loopstates.

Associated action: The same as TntoFaultState.

SingleDetect: Handles the case where the single operating loop goes intodetect.

Activated when: The state machine is in SingleLoopClear and theoperating loop goes into detect.

Associated action: The event start time is set to the current time, andthe loop data starts the event signature.

StillSingleDetect: A single loop detect is still active.

Activated when: The lane is operating in single loop mode, and the loopis still detecting, and the speed estimate status has not changed.

Associated action: The new data element is added to the signature.

SingleDetectEnds: A detect that is not part of a double detectionconfiguration has ended in single loop mode.

Activated when: The loop goes out of detect, and the event is not partof a double detection configuration.

Associated action: The new data item is added to the signature. The meanspeed is determined from the single loop estimates made. Outputs aremade as required by the application. The state machine is reset readyfor re-use.

SingleDetectEndsDouble: A single loop mode detect that is part of adouble detection configuration ends, and the configuration is ready forcompletion.

Activated when: The loop goes out of detect, and the event is part of adouble detection configuration, and the configuration is now ready forcompletion.

Associated action: The new data item is added to the signature. The meanspeed is determined from the single loop estimates made if the dataamplitude is above a threshold (e.g. 20). The event is completed as forDoubleBothCompletes, taking care to include only the data from theoperating loop in this lane.

SingleDetectEndsPending: A single loop mode detect that is part of adouble detection configuration ends, and the configuration is not readyfor completion.

Activated when: The loop goes out of detect, and the event is part of adouble detection configuration, and the configuration is not ready forcompletion.

Associated action: The new data item is added to the signature. The meanspeed is determined from the single loop estimates made if the dataamplitude is above a threshold (e.g. 20). A new state machine isselected to receive data for this lane.

SpeedEstimateGood: in single detect mode, an assessment of the speedestimates has been made, and they indicate a good measurement has beenmade.

Activated when: There are two or more speed estimates made, and the meanof the estimates made is less than or equal to the maximum likely speed(e.g.60 meters/second, but depends on application) and greater than orequal to the minimum speed for good single loop operation (e.g. 2.5meters/second, but depends on application).

Associated action: The same as StillSingleDetect.

SpeedEstimateBad: In single detect mode, an assessment of the speedestimates has been made, and they indicate a bad measurement has beenmade.

Activated when: There are two or speed estimates made, and the mean ofthe estimates made is greater than to the maximum likely speed (e.g. 60meters/second, but depends on application) or less than to the minimumspeed for good single loop operation (e.g. 2.5 meters/second, butdepends on application), and the application requires good speedestimates.

Associated action: None.

SpuriousSingleEnds: Handles the case in single loop mode where the meanof the speed estimates is bad and the event ends.

Activated when: The state machine is in the SingleSpurious state and theloop goes out of detect, and the event is not part of a double detectionconfiguration.

Associated action: The state machine is reset for re-use.

SpuriousSingleEndsDouble: Handles the case in single loop mode where themean of the speed estimates is bad and the event ends, and the event ispart of a double detection configuration.

Activated when: The state machine is in the SingleSpurious state and theloop goes out of detect, and the event is part of a double detectionconfiguration.

Associated action: The event is separated from the remainder of thedouble detection configuration (on both side, if needed), and if theremainder of the configuration is now ready for completion, it iscompleted.

SinglePendingEnds: Handles the case of a single loop detection that waswaiting for completion of a double detection configuration, and theconfiguration has now completed.

Activated when: The state machine is in the WaitotherSingle state, andthe configuration completes, and the event is still part of theconfiguration.

Associated action: The state machine is reset ready for re-use.

SingleActuallyTwo: Handles the case of a single loop detection that waswaiting for completion of a double detection configuration, and theconfiguration has now completed, but this event has been found to beseparate from the remainder of the configuration.

Activated when: The state machine is in the WaitotherSingle state, andthe configuration completes, and the event has been separated from partof the configuration.

Associated action: If the event is not part of any remaining doubledetection configuration, the action is the same as DetectEnds, else theaction is the same as DetectEndsDouble.

2.2. The Tailgate State Machine

2.2.1. Description of States

FIG. 14 forms the transition diagram for the Tailgate State Machine.

Tidle:

The Tailgate state machine is idle, nothing has indicated thattailgating may happen.

Loop1Possible:

A minimum in the first loop signature is below the threshold fortailgate detection for the speed of the vehicle. This indicates that thevehicle is either towing something, or that there are two vehiclestailgating.

Loop1Confirmed:

After there being a candidate minimum, the signal has subsequently risento a level that indicates that the minimum signifies a tailgating ortowing situation, i.e. that the minimum was not a glitch in the tail endof the signature.

BothPossible:

Candidate minima, indicating a tailgating or towing situation, have beenseen in both first and second loop signatures.

Loop2Possible:

A candidate minimum has been seen in the signature from the second looponly. This can happen if two vehicles were further apart over the firstloop, and so the first loop signatures separated properly, but camecloser over the second loop.

Loop2Expected:

A minimum that was rejected as a tailgating indicator occurred over thefirst loop, so expect the same over the second and reduce sensitivity alittle to prevent false triggering.

Loop1ConfLoop2Poss:

A candidate minimum confirmed by a following maximum has been seen inthe first loop signature, and a candidate minimum only has been seen inthe second loop signature.

2.2.2. Description of Transitions

TnoAction: Do nothing.

Activated when: An input occurs that does not require storage and doesnot change the state of the state machine.

Associated action: None.

Loop1Min: A minimum has occurred in the first loop signature thatpossibly indicating tailgating.

Activated when: The Tailgate state machine is in the Tidle state an aminimum occurs in the first loop signature that meets the tailgatingcriteria for the estimated speed of the vehicle.

Associated action: Details of the minimum are stored (amplitude, time,and which minimum it is).

Loop2MinAfter1: A minimum occurs in the second loop signature thatindicates tailgating may indeed be occurring.

Activated when: A minimum occurs in the second loop signature that meetsthe tailgating amplitude criterion for the speed, and the minimum is notthe same proportional amplitude as the matching first loop minimum, orthe level of the second loop minimum is so low as to certainly indicatetailgating (e.g. less than 35).

Associated action: Details of the minimum are stored (amplitude, time,and which minimum it is).

Loop1Confirm: A first loop minimum is followed by a confirming maximum.

Activated when: The state machine is in the Loop1Possible state and thecurrent first loop signature data is greater than the confirmation level(A default value of 300).

Associated action: None.

Reject: Tailgating is rejected as the reason for the observed signature.

Activated when: The state machine is in the Loop1Confirmed state andboth loops drop out of detection, or the state machine is in theBothPossible state and either loop drops out of detection, or the statemachine is in the

Loop2Possible state and the second loop drops out of detection or thefirst loop drops out of detection and the second loop current dataamplitude is less than a certain threshold (e.g. 40), or the statemachine is in the Loop2Expected state and the first loop drops out ofdetection.

Associated action: The state machine is reset.

NewMin: A new minimum occurs that doesn't change the state of the statemachine.

Activated when: (The state machine is in the state Loop1Possible and anew minimum occurs in the first loop data, or the state machine is inthe BothPossible state and a new minimum occurs in either loop, or thestate machine is in the states Loop1ConfLoop2Poss or Loop2Possible and anew minimum occurs in the second loop) and the minimum is less than thecurrently stored value.

Associated action: Details of the minimum are stored (amplitude, time,and which minimum it is).

Tailgate1Min: Tailgating is confirmed based on a first loop minimumonly.

Activated when The state machine is in the Loop1Possible state andeither the first loop drops out of detection and the lowest minimum isless than a given threshold (e.g. 25) and the current data level isgreater than the confirmation level (e.g. 300) or the second loop dropsout. Alternatively, the state machine is in the Loop1confirmed state andthe second loop has dropped out of detection and the first loop hasn't.

Associated action: The signature for the first loop is split at the timeof the candidate minimum, and the data after this is transferred to afree Event state machine. Data from both loops is now directed to theselected Event state machine.

The Event state machine handling the data so far has a tailgatingindication set so that it will complete processing this event. TheTailgate state machine is reset ready for re-use.

Towing: The data from both loops indicates that the event signifies atowing vehicle.

Activated when: The state machine is in the states Loop1Confirmed, orLoop1ConfLoop2Poss and a second loop minimum occurs that is equal to thefirst loop minimum.

Associated action: If required by the application, the Event statemachine has an indication set that the event represents a towingvehicle. The Tailgate state machine is reset ready for re-use.

Tailgating: Tailgating is confirmed.

Activated when: The state machine is in the Loop1ConfLoop2Poss state andthe second loop data is greater than the confirmation level (e.g. 300)and there is a second loop minimum meeting the possible tailgatingcriteria and this minimum is not the same amplitude as the first loopminimum. Alternatively in the same state the first loop drops out andthe second is still detecting and its current data amplitude is greaterthan the confirmation level. Alternatively the state machine is in theLoop2Expected state and the second loop drops out.

Associated action: The signature for both loops is transferred to a freeEvent state machine, or only the data for the first loop if there is nocandidate minimum in the second loop signature. Data from both loops isdirected to the newly selected Event state machine. The Event statemachine handling the current event has an indication set that tailgatinghas been detected, so that it will complete immediately. The Tailgatestate machine is reset ready for re-use.

Loop2Min: A low minimum has occurred in the loop 2 data, tailgating ispossible.

Activated when: The state machine is in the Tidle state and a minimumoccurs that is a small percent less than the normal criterion for theestimated speed (e.g. 4% less), or in the same state data from the firstloop is directed to another Evenet state machine and a minimum hasoccurred in the second loop that is less than 12.5% of the overallmaximum in the signature, or that is less than a given threshold (e.g.40).

Associated action: Details of the minimum are stored.

FindLoop1Min: There is an indication from the second loop signature onlythat tailgating is occurring.

Activated when: The state machine is in the Tidle state and the firstloop is detecting and the second isn't (and has been) and the overallmaximum in the second loop data is less than a given threshold (e.g.20). Alternatively the state machine is in the Loop2Possible state andthe current second loop data amplitude is greater than the confirmationlevel and the first loop is still detecting, or the reason for thisactivation of the Tailgate state machine is that the first loop has justdropped out.

Associated action: The lowest minimum between maxima that are greaterthan a given theshold (e.g. 40) is located. If such can be found and theamplitude is less than a given percentage of the overall maximum of thesignature (e.g. 35%), then the signature is split at this point. If aminimum meeting the above criteria cannot be found, then if and only ifthe overall current data amplitude of the first loop data is less than agiven threshold (e.g. 40), then the first loop data is split at thepoint where it starts to trend upwards significantly (dealing with thecase of leading merged shadow data). The second loop data is split atthe point of the lowest confirmed candidate minimum if there is one,else it is not split. Data from both loops is directed to the newlyselected Event state machine. The Even state machine handling thecurrent event has an indication set that tailgating has been detected,so that it will complete immediately. The Tailgate state machine isreset ready for re-use.

Tailgate2Only: A second loop minimum is confirmed as indicatingtailgating, there is no confirmed first loop minimum, and the first loopis not detecting.

Activated when: The state machine is in the Loop2Possible state and thecandidate minimum is confirmed by the second loop data exceeding theconfirmation level, and the first loop is not currently detecting.

Associated action: If the Event state machine that was receiving firstloop data (and is now the designated “previous” one for that loop) is inthe ClearPending1 state, then it becomes the target state machine, elsethe target state machine is the one currently receiving first loop data.The second loop signature is split and all after the split istransferred to the target state machine. Data from the second loop isdirected to the target state machine. An indication that tailgating hasbeen detected is set in the current Event state machine so that it willcomplete immediately. The current tailgate state machine is reset forre-use.

RejectedLoop1: A candidate minimum has been rejected in the first loopsignature.

Activated when: A candidate minimum in the second loop signature hasoccurred and is found to be the same as the candidate first loopsignature. Alternatively there is a candidate minimum in the first loopsignature and its amplitude is greater than a given threshold (e.g. 25)or if it is less than the threshold, when the first loop drops out ofdetection its signature maximum is not greater than the confirmationlevel.

Associated action: None.

ArticTowing: There is a minimum expected in the second loop data andwhen it occurs it is the same as the candidate (unconfirmed) first loopminimum, using a wide comparison window.

Activated when: The state machine is in the Loop2Expected state and aminimum occurs in the second loop data which meets the tailgatingamplitude criterion for the estimated speed of the vehicle, and theminimum is the same as the first loop minimum within the constraints ofa wide comparison window.

Associated action: The same as for Towing.

TailgatingStoreMin: There is a minimum expected in the second loop dataand when it occurs it is not the same as the candidate (unconfirmed)first loop minimum, using a wide comparison window.

Activated when: The state machine is in the Loop2Expected state and aminimum occurs in the second loop data which meets the tailgatingamplitude criterion for the estimated speed of the vehicle, and theminimum is the same as the first loop minimum within the constraints ofa wide comparison window.

Associated action: The minimum is stored, and then the action is thesame as for Tailgating.

Loop1NowConfirmed: Both loops have candidate minima, and the first loopdata has exceeded the confirmation level.

Activated when: The state machine is in the BothPossible state and thefirst loop data exceeds the confirmation level.

Associated action: The same as for Loop1Confirm.

Loop2NowPossible: There is a confirmed first loop minimum and acandidate minimum that is not the same in the second loop signature.

Activated when: The state machine is in the Loop1Confirmed state and acandidate minimum occurs in the second loop signature that is not thesame as the first loop confirmed candidate.

Associated action: The same as for Loop2MinAfter1.

What is claimed is:
 1. Signal processing apparatus for processing sensorsignals from a road vehicle sensing apparatus of the type defined for amulti lane highway, comprising means arranged to monitor the timing ofsensor signals generated from sensors in adjacent lanes of a highway andto provide an indication when such sensor signals could correspond to adouble count with a single vehicle being detected by both sensors, andmeans arranged to respond to said indication from said monitoring meansto calculate the geometric mean of the amplitudes of the sensor signalsfrom the sensors in adjacent lanes, and to provide a double countindication if said geometric mean is below a predetermined thresholdvalue.
 2. Signal processing apparatus as claimed in claim 1, whereinsaid means arranged to respond is further arranged to provide a probabledouble count indication if said geometric mean is above saidpredetermined threshold value but below a higher predetermined thresholdvalue, and the apparatus further comprises additional testing meansresponsive to said probable double count indication to test for a doublecount.
 3. Signal processing apparatus as claimed in claim 2, whereinsaid additional testing means is arranged to confirm a double count ifthe envelope of the sensor signal from the sensor in one of the adjacentlanes is contained entirely within the envelope of the signal from thesensor in the other of the adjacent lanes after allowing for any timingdifference corresponding to the adjacent sensors not being alignedacross the width of the highway.
 4. Signal processing apparatus forprocessing sensor signals from a road vehicle sensing apparatus of thetype defined, comprising timing means arranged to determine the timebetween predefined points on the leading and trailing edges of a sensorsignal produced by a vehicle travelling past the sensor, and calculatingmeans arranged to calculate a value for the length of said vehicle fromthe product of said time and a value for the speed of the vehicle,wherein said timing means comprises: a) means to determine in theprofile of the leading edge of said sensor signal a first high signalmagnitude value at a first minimum in the modulus of the gradient of theleading edge profile nearest to the start of said leading edge, b) meansto find a timing start point on said leading edge before said firstminimum at which the sensor signal has a start magnitude value which isa first predetermined fraction of said first high signal magnitudevalue, c) means to determine in the profile of the trailing edge of thesensor signal a last high signal magnitude value at a last minimum inthe modulus of the gradient of the trailing edge profile nearest to thefinish of the trailing edge, d) means to find a timing end point on saidtrailing edge after said last minimum at which the sensor signal has anend magnitude value which is a second predetermined fraction of saidlast high signal magnitude value; and e) means to utilize said timingstart point and said timing end point as said predefined points fordetermining said time.
 5. Signal processing apparatus as claimed inclaim 4, wherein said timing means is arranged to disregard as saidnearest minimum any minimum in the modulus of the gradient at which thegradient is more than 25% of the maximum gradient in the respectiveedge.
 6. Signal processing apparatus as claimed in claim 4, wherein saidtiming means is arranged to disregard as said nearest minimum anyminimum in the modulus of the gradient at which the signal magnitude isless than 65% of the magnitude at the nearest maximum point on saidrespective edge where the gradient is zero.
 7. Signal processingapparatus as claimed in claim 4, wherein said timing means is arrangedto disregard as said nearest minimum any minimum in the modulus of thegradient at which the gradient is not less than 35% of the maximumgradient in the respective edge for at least 15% of the duration of theedge.
 8. Signal processing apparatus as claimed in claim 4, wherein saidtiming means is arranged such that said predetermined fraction of saidnearest adjacent high signal magnitude is in the range 25% to 75%. 9.Signal processing apparatus for processing sensor signals from a roadvehicle sensing apparatus of the type defined, comprising recordingmeans arranged to record magnitude values for a sensor signal taken at aplurality of intervals as a vehicle passes the sensor, means arranged toprovide a value for the speed of the vehicle, said intervals beingselected in association with said speed value to correspond to positionshaving predetermined spacings along the vehicle, calculating meansarranged to calculate values for said recorded magnitudes which arenormalized relative to the maximum amplitude of the sensor signal,storage means containing an empirically derived function relating saidnormalized recorded magnitude values to the length of a vehicleproducing said sensor signal, and processing means arranged to derive avalue for the length of the vehicle from said function and saidnormalized values.
 10. Signal processing apparatus as claimed in claim9, wherein said calculating means is arranged to determine whether thesensor signal has respective separate maxima adjacent the leading andtrailing edges of the signal and then to set the recorded magnitudevalues taken at each of the intervals between said maxima at themagnitude value of one of the maxima.
 11. Signal processing apparatusfor processing sensor signals from a road vehicle sensing apparatus ofthe type defined with two successive sensors in a single lane,comprising means arranged to monitor the trailing edge of the signalfrom the entry sensor and the leading edge of the signal from theleaving sensor as a vehicle passes the sensors and to determine a valuefor the signal magnitude at the time when said magnitude values in saidtrailing and leading edges are substantially the same, and calculatingmeans arranged to calculate a value for the length of the vehicle fromsaid determined signal magnitude value.
 12. Signal processing apparatusas claimed in claim 11, wherein said means arranged to monitor isfurther arranged to record magnitude values for said sensor signal fromthe entry sensor at least from the maximum of said signal over saidtrailing edge, to record magnitude values for said sensor signal fromthe leaving sensor at least over said leading edge to the maximum ofsaid signal, to correlate the timing of the recorded values from the twosensors, to normalize said recorded values for each of the sensorsignals relative to the recorded maximum of the respective sensorsignal, and to determine the normalized value at the time when saidnormalized recorded values in the trailing and leading edges aresubstantially the same, and said calculating means calculates the lengthvalue from said determined normalized value.
 13. Signal processingapparatus as claimed in claim 11, wherein said means arranged to monitoris arranged to determine the actual signal magnitude value when thevalues in said edges are the same, and said calculating means calculatessaid length value from said determined actual value and the maximumamplitude of at least one of the sensor signals.
 14. Signal processingapparatus for processing sensor signals from a road vehicle sensingapparatus of the type defined with successive sensors in a single lane;the processing apparatus being for use in determining values for thelengths of vehicles passing the sensors when the vehicles are longenough to extend fully over both sensors simultaneously whereby a firsthigh point in the signal from the leaving sensor occurs before the lasthigh point in the signal from the entry sensor, a high point beingdefined as a minimum in the modulus of the gradient of the signal; theapparatus comprising recording means arranged to record magnitude valuesfor the sensor signals from each of said entry and leaving sensors andto correlate the values from one sensor with the values from the othersensor recorded at the same time; identifying means for identifying atleast one point on a leading edge of the signal from the leaving sensoror on the trailing edge of the signal from the entry sensor, which pointis empirically known to correspond respectively to a predeterminedposition of the front of the vehicle relative to the leaving sensor orthe rear of the vehicle relative to the entry sensor; time correlatingmeans arranged to correlate said identified point on the respectiveabove mentioned sensor signal (the first sensor signal) with a timecorrelated point on the other of said sensor signals (the second sensorsignal); profile correlating means arranged to correlate said timecorrelated point on said second sensor signal with a correspondingprofile correlated point on the profile of said first sensor signal,representative of the vehicle having the equivalent positions inrelation to the two sensors; said time correlating means and saidprofile correlating means being further arranged to correlate saidprofile correlated point on said first sensor signal with a further timecorrelated point on said second sensor signal, to correlate said furthertime correlated point on said second sensor signal with a furthercorresponding profile correlated point on the profile of said firstsensor signal, and alternately to repeat said time and profilecorrelations on said further points to provide correlated points overthe full profile of the first sensor signal, and calculating meansarranged to calculate a value for vehicle length from said empiricallyknown predetermined position, the known spacing between the entry andleaving sensor, and the number of correlations by said profilecorrelating means.
 15. Signal processing apparatus as claimed in claim14, and including correction means arranged to normalize the magnitudevalue of the final point correlated by said profile correlating means onsaid first sensor signal relative to the nearest high point in thesignal and to correct the calculated length value by an amount dependenton the difference between said normalized magnitude and an empiricallydetermined reference magnitude.
 16. Signal processing apparatus forprocessing sensor signals from a road vehicle sensing apparatus of thetype defined with two successive sensors in a single lane, comprisingrecording means arranged (a) to record, when a vehicle passes thesensors, magnitude values for the sensor signal from the entry sensor atleast over the trailing edge of the profile of the signal from theadjacent high point, defined as the last point on the trailing edgewhere there is a minimum in the modulus of the gradient of the signal,(b) to record magnitude values for the sensor signal from the leavingsensor at least over the leading edge of the signal to the adjacent highpoint, defined as the first point on the leading edge where there is aminimum in the modulus of the gradient of the signal, and (c) tocorrelate the timing of the recorded values from the two sensors;normalizing means arranged to normalize the recorded magnitude valuesfor each sensor signal relative to the magnitude of the adjacent highpoint of the respective signal, selecting means to select a plurality ofpoints on either one of the trailing edge of the entry sensor signal orthe leading edge of the leaving sensor signal (said one edge), saidselected points having predetermined normalized signal magnitudes,correlating means arranged to correlate said selected points on said oneedge with time correlated points on the other edge and to identify thenormalized magnitude values of said time correlated points, andcalculating means arranged to use an empirically derived function tocalculate a value for the length of the vehicle from said identifiednormalized magnitude values.
 17. Signal processing apparatus forprocessing sensor signals from a road vehicle sensing apparatus of thetype defined with two successive sensors in a lane, comprisingmonitoring means arranged to monitor at least one characteristic of theprofiles of signals from the entry and leaving sensors and comparingmeans arrange to compare said monitored characteristic of a signalprofile from the entry sensor with the next following signal profilefrom the leaving sensor and to provide a tailgating indication if saidmonitored characteristics in the profiles are sufficiently different toindicate that the two profiles are not produced by a single vehicle. 18.Signal processing apparatus as claimed in claim 17, wherein saidmonitoring means is arranged to determine the presence of and measurethe magnitude value at a signal minimum of each profile, whereby saidmagnitude value at the minimum constitutes said characteristic. 19.Signal processing apparatus as claimed in claim 18, wherein saidcomparing means is arranged to provide a tailgating indication, if asignal minimum is detected in the signal profile from the entry sensors,but the subsequent profile from the leaving sensor drops directly fromits maximum substantially to zero magnitude before rising again. 20.Signal processing apparatus as claimed in claim 18, wherein saidcomparing means is arranged to calculate the normalized magnitudes ateach signal minimum relative to the maximum amplitude of the respectivesignal, and to compare said normalized magnitudes at minima.
 21. Signalprocessing apparatus as claimed in claim 20, wherein said monitoringmeans is arranged to determine the presence of a signal minimum only ifthe normalized magnitude drops below a first predetermined threshold andthen rises again above a second predetermined threshold above said firstthreshold.
 22. Signal processing apparatus as claimed in claim 21,wherein said comparing means is arranged to provide a tailgatingindication if a signal minimum is detected only in the signal profilefrom the leaving sensor.
 23. Signal processing apparatus as claimed inclaim 22, wherein said comparing means is arranged to provide saidtailgating indication only if said signal minimum detected only in theprofile from the leaving sensor has a normalized magnitude below a thirdpredetermined threshold less than said first threshold.
 24. Signalprocessing apparatus as claimed in claim 21, and including speed meansarranged to determine from a sensor signal a value for the speed of thevehicle passing the sensor, and said monitoring means is arranged toreduce said first threshold for higher speed values.
 25. Signalprocessing apparatus as claimed in claim 24, wherein said speed means isarranged to measure the time elapsing between predetermined normalizedmagnitudes on the leading edge of a signal profile, and to calculatesaid speed value from said elapsed time and an empirically determineddistance corresponding to said predetermined normalized magnitudes. 26.Signal processing apparatus for processing sensor signals from a roadvehicle sensing apparatus of the type defined, comprising recordingmeans arranged to record, when a vehicle passes the sensor, magnitudevalues for the sensor signal at least over the leading edge of theprofile of the signal to the adjacent high point, defined as the firstpoint on the leading edge where there is a minimum in the modulus of thegradient of the signal and to record the relative timing of the recordedmagnitude values, normalizing means arranged to normalize the recordedmagnitude values relative to the magnitude of said adjacent high point,timing means arranged to determine from said recorded relative timingthe elapsed time between two predetermined normalized magnitude valuesamongst the normalized recorded values, and calculating means arrangedto calculate a value for the speed of the vehicle from said elapsed timeand an empirically determined distance corresponding to saidpredetermined normalized magnitude values.
 27. Signal processingapparatus for processing sensor signals from a road vehicle sensingapparatus of the type defined with two successive sensors in a lane, thesignal generation circuit of the sensing apparatus operating to providediscrete sensor signal magnitude values at regular timing intervalscorresponding to a scanning rate of the circuit, the signal processingapparatus comprising timing means arranged to measure the elapsed timebetween corresponding points in the respective magnitude profiles of thetwo sensor signals as a vehicle passes the entry and leaving sensors,and calculating means arranged to calculate a value for the speed of thevehicle from said elapsed time and the known distance between thesensors, wherein the timing means is further arranged to interpolatebetween time points corresponding to said regular timing intervals. 28.Signal processing apparatus as claimed in claim 27, wherein saidcorresponding points in the respective magnitude profiles are points ata selected magnitude value on corresponding leading or trailing edges ofthe profiles from the two sensors and the timing means is arranged todetermine the timing at at least one of said points by identifying thediscrete sensor signal magnitude values on either side of said selectedvalue and using the differences between said discrete values and theselected value to calculate a fractional part of said regular timinginterval by linear interpolation.
 29. Signal processing apparatus forprocessing sensor signals from a road vehicle sensing apparatus of thetype defined, comprising timing means arranged to determine the timebetween preferred points on the leading and trailing edges of a sensorsignal produced by a vehicle travelling past the sensor, and calculatingmeans arranged to calculate a value for the length of said vehicle fromthe product of said time and a value for the speed of the vehiclewherein said timing means comprises: a) means to find in the profile ofthe leading edge of said sensor signal a timing start point at whichsaid leading edge profile has a maximum positive value of gradient, b)means to find in the profile of the trailing edge of said sensor signala timing end point at which said trailing edge profile has a maximumnegative value of gradient; and c) means to utilize said timing startpoint and said timing end point as said predefined points fordetermining said time.
 30. A method of processing sensor signals from aroad vehicle sensing apparatus of the type defined for a multi lanehighway, comprising the steps of monitoring the timing of sensor signalsgenerated from sensors in adjacent lanes of a highway, providing anindication when such sensor signals could correspond to a double countwith a single vehicle being detected by both sensors, and responding tosaid indication by calculating the geometric mean of the amplitudes ofthe sensor signals from the sensors in adjacent lanes, and providing adouble count indication if said geometric mean is below a predeterminedthreshold value.
 31. A method as claimed in claim 30, wherein a probabledouble count indication is provided if said geometric mean is above saidpredetermined threshold value but below a higher predetermined thresholdvalue, and the method comprises an additional testing step responsive tosaid probable double count indication to test for a double count.
 32. Amethod as claimed in claim 31, wherein said additional testing stepconfirms a double count if the envelope of the sensor signal from thesensor in one of the adjacent lanes is contained entirely within theenvelope of the signal from the sensor in the other of the adjacentlanes after allowing for any timing difference corresponding to theadjacent sensors not being aligned across the width of the highway. 33.A method of processing sensor signals from a road vehicle sensingapparatus of the type defined, comprising the steps of providingindications of the time between predefined points on the leading andtrailing edges of a sensor signal produced by a vehicle travelling pastthe sensor, and calculating a value for the length of said vehicle fromthe product of said time and a value for the speed of the vehicle,wherein said predefined points are points on said respective edges atwhich the sensor signal has a magnitude which is a predeterminedfraction of the nearest adjacent high signal magnitude, said nearestadjacent high signal magnitude being defined as the magnitude at thenearest minimum in the modulus of the gradient.
 34. A method as claimedin claim 33, wherein any minimum in the modulus of the gradient at whichthe gradient is more than 25% of the maximum gradient in the respectiveedge is disregarded as said nearest minimum.
 35. A method as claimed inclaim 33, wherein any minimum in the modulus of the gradient at whichthe signal magnitude is less than 65% of the magnitude at the nearestmaximum point on said respective edge where the gradient is zero isdisregarded as said nearest minimum.
 36. A method as claimed in claim33, wherein any minimum in the modulus of the gradient at which thegradient is not less than 35% of the maximum gradient in the respectiveedge for at least 15% of the duration of the edge is disregarded as saidnearest minimum.
 37. A method as claimed in claim 33, wherein saidpredetermined fraction of said nearest adjacent high signal magnitude isin the range 25% to 75%.
 38. A method of processing sensor signals froma road vehicle sensing apparatus of the type defined, comprising thesteps of recording magnitude values for a sensor signal taken at aplurality of intervals as a vehicle passes the sensor, providing a valuefor the speed of the vehicle, said intervals being selected inassociation with said speed value to correspond to positions havingpredetermined spacings along the vehicle, calculating values for saidrecorded magnitudes which are normalized relative to the maximumamplitude of the sensor signal, storing an empirically derived functionrelating said normalized recorded magnitude values to the length of avehicle producing said sensor signal, and deriving a value for thelength of the vehicle from said function and said normalized values. 39.A method as claimed in claim 38, wherein said calculating step includesthe step of determining whether the sensor signal has respectiveseparate maxima adjacent the leading and trailing edges of the signaland then setting the recorded magnitude values taken at each of theintervals between said maxima at the magnitude value of one of themaxima.
 40. A method of processing sensor signals from a road vehiclesensing apparatus of the type defined with two successive sensors in asingle lane, comprising the steps of monitoring the trailing edge of thesignal from the entry sensor and the leading edge of the signal from theleaving sensor as a vehicle passes the sensors, determining a value forthe signal magnitude at the time when said magnitude values in saidtrailing and leading edges are substantially the same, and calculating avalue for the length of the vehicle from said determined signalmagnitude value.
 41. A method as claimed in claim 40, wherein saidmonitoring and determining steps include recording magnitude values forsaid sensor signal from the entry sensor at least from the maximum ofsaid signal over said trailing edge, recording magnitude values for saidsensor signal from the leaving sensor at least over said leading edge tothe maximum of said signal, correlating the timing of the recordedvalues from the two sensors, to normalizing said recorded values foreach of the sensor signals relative to the recorded maximum of therespective sensor signal, and determining the normalized value at thetime when said normalized recorded values in the trailing and leadingedges are substantially the same, said length value being calculatedfrom said determined normalized value.
 42. A method as claimed in claim40, wherein said monitoring and determining steps include determiningthe actual signal magnitude value when the values in said edges are thesame, and calculating said length value from said determined actualvalue and the maximum amplitude of at least one of the sensor signals.43. A method of processing sensor signals from a road vehicle sensingapparatus of the type defined with successive sensors in a single lane;the processing being for determining values for the lengths of vehiclespassing the sensors when the vehicles are long enough to extend fullyover both sensors simultaneously whereby a first high point in thesignal from the leaving sensor occurs before the last high point in thesignal from the entry sensor, a high point being defined as a minimum inthe modulus of the gradient of the signal; the method comprising thesteps of recording magnitude values for the sensor signals from each ofsaid entry and leaving sensors and correlating the values from onesensor with the values from the other sensor recorded at the same time;identifying at least one point on a leading edge of the signal from theleaving sensor or on the trailing edge of the signal from the entrysensor, which point is empirically known to correspond respectively to apredetermined position of the front of the vehicle relative to theleaving sensor or the rear of the vehicle relative to the entry sensor;time correlating said identified point on the respective above mentionedsensor signal (the first sensor signal) with a time correlated point onthe other of said sensor signals (the second sensor signal); profilecorrelating said time correlated point on said second sensor signal witha corresponding profile correlated point on the profile of said firstsensor signal, representative of the vehicle having the equivalentpositions in relation to the two sensors; further correlating saidprofile correlated point on said first sensor signal with a further timecorrelated point on said second sensor signal, and correlating saidfurther time correlated point on said second sensor signal with afurther corresponding profile correlated point on the profile of saidfirst sensor signal, alternately repeating said time and profilecorrelations on said further points to provide correlated points overthe full profile of the first sensor signal, and calculating a value forvehicle length from said empirically known predetermined position, theknown spacing between the entry and leaving sensor, and the number ofcorrelations by said profile correlating means.
 44. A method as claimedin claim 43, including the step of normalizing the magnitude value ofthe final point correlated by said profile correlating means on saidfirst sensor signal relative to the nearest high point in the signal andcorrecting the calculated length value by an amount dependent on thedifference between said normalized magnitude and an empiricallydetermined reference magnitude.
 45. A method of processing sensorsignals from a road vehicle sensing apparatus of the type defined withtwo successive sensors in a single lane, comprising the steps ofrecording, when a vehicle passes the sensors, magnitude values for thesensor signal from the entry sensor at least over the trailing edge ofthe profile of the signal from the adjacent high point, defined as thelast point on the trailing edge where there is a minimum in the modulusof the gradient of the signal, recording magnitude values for the sensorsignal from the leaving sensor at least over the leading edge of thesignal to the adjacent high point, defined as the first point on theleading edge where there is a minimum in the modulus of the gradient ofthe signal, correlating the timing of the recorded values from the twosensors; normalizing the recorded magnitude values for each sensorsignal relative to the magnitude of the adjacent high point of therespective signal, selecting a plurality of points on either one of thetrailing edge of the entry sensor signal or the leading edge of theleaving sensor signal (said one edge), said selected points havingpredetermined normalized signal magnitudes, correlating said selectedpoints on said one edge with time correlated points on the other edgeand identifying the normalized magnitude values of said time correlatedpoints, and using an empirically derived function to calculate a valuefor the length of the vehicle from said identified normalized magnitudevalues.
 46. A method of processing sensor signals from a road vehiclesensing apparatus of the type defined with two successive sensors in alane, comprising the steps of monitoring at least one characteristic ofthe profiles of signals from the entry and leaving sensors, comparingsaid monitored characteristic of a signal profile from the entry sensorwith the next following signal profile from the leaving sensor, andproviding a tailgating indication if said monitored characteristics inthe profiles are sufficiently different to indicate that the twoprofiles are not produced by a single vehicle.
 47. A method as claimedin claim 46, wherein said monitoring step includes determining thepresence of and measuring the magnitude value at a signal minimum ofeach profile, whereby said magnitude value at the minimum constitutessaid characteristic.
 48. A method as claimed in claim 47, wherein atailgating indication is provided, if a signal minimum is detected inthe signal profile from the entry sensors, but the subsequent profilefrom the leaving sensor drops directly from its maximum substantially tozero magnitude before rising again.
 49. A method as claimed in claim 47,wherein said comparing step includes calculating the normalizedmagnitudes at each signal minimum relative to the maximum amplitude ofthe respective signal, and to compare said normalized magnitudes atminima.
 50. A method as claimed in claim 49, wherein said monitoringstep includes determining the presence of a signal minimum only if thenormalized magnitude drops below a first predetermined threshold andthen rises again above a second predetermined threshold above said firstthreshold.
 51. A method as claimed in claim 50, wherein a tailgatingindication is provided if a signal minimum is detected only in thesignal profile from the leaving sensor.
 52. A method as claimed in claim51, wherein said tailgating indication is provided only if said signalminimum detected only in the profile from the leaving sensor has anormalized magnitude below a third predetermined threshold less thansaid first threshold.
 53. A method as claimed in claim 50, including thestep of determining from a sensor signal a value for the speed of thevehicle passing the sensor, and said first threshold is reduced forhigher speed values.
 54. A method as claimed in claim 53, wherein thespeed is determined by measuring the time elapsing between predeterminednormalized magnitudes on the leading edge of a signal profile, andcalculating said speed value from said elapsed time and an empiricallydetermined distance corresponding to said predetermined normalizedmagnitudes.
 55. A method of processing sensor signals from a roadvehicle sensing apparatus of the type defined, comprising the steps ofrecording, when a vehicle passes the sensor, magnitude values for thesensor signal at least over the leading edge of the profile of thesignal to the adjacent high point, defined as the first point on theleading edge where there is a minimum in the modulus of the gradient ofthe signal and recording the relative timing of the recorded magnitudevalues, normalizing the recorded magnitude values relative to themagnitude of said adjacent high point, determining from said recordedrelative timing the elapsed time between two predetermined normalizedmagnitude values amongst the normalized recorded values, and calculatinga value for the speed of the vehicle from said elapsed time and anempirically determined distance corresponding to said predeterminednormalized magnitude values.
 56. A method of processing sensor signalsfrom a road vehicle sensing apparatus of the type defined with twosuccessive sensors in a lane, the signal generation circuit of thesensing apparatus operating to provide discrete sensor signal magnitudevalues at regular timing intervals corresponding to a scanning rate ofthe circuit, the method comprising the steps of measuring the elapsedtime between corresponding points in the respective magnitude profilesof the two sensor signals as a vehicle passes the entry and leavingsensors, and calculating a value for the speed of the vehicle from saidelapsed time and the known distance between the sensors, wherein theelapsed time measuring step includes interpolating between time pointscorresponding to said regular timing intervals.
 57. A method as claimedin claim 56, wherein said corresponding points in the respectivemagnitude profiles are points at a selected magnitude value oncorresponding leading or trailing edges of the profiles from the twosensors and the timing at at least one of said points is determined byidentifying the discrete sensor signal magnitude values on either sideof said selected value and using the differences between said discretevalues and the selected value to calculate a fractional part of saidregular timing interval by linear interpolation.
 58. A method ofprocessing sensor signals from a road vehicle sensing apparatus of thetype defined, comprising the steps of determining the time between astart point of maximum positive gradient on the profile of the leadingedge of a sensor signal produced by a vehicle travelling past the sensorand an end point of maximum negative gradient on the trailing edgeprofile thereof, and calculating a value for the length of said vehiclefrom the product of said time and a value for the speed of the vehicle.